- Build and Scale
- Posts
- Hosting your web app at the beginning and the 6 things you should consider
Hosting your web app at the beginning and the 6 things you should consider
There are a lot of hosting platforms to choose from these days. If you have just started building your web app and dont know much about what hosting to choose, this read will help you understand about hosting services and also which one makes more sense to choose. This comes from what we learnt when testing our beta apps at Twimbit.
The biggest trap
When it comes to hosting our app there are many fancy terms that come across. You worry about the load, traffic, speed, uptime and what not. And then it becomes more difficult out of all the hosting providers like AWS, GCP, Azure etc. You would probably read a comparison test and choose the one that you think stands out. Some of the hostings also offer you free credits and you probably would think, Why not, it's free. Here is where we fall for them. It would be easy on your pocket but you will need a lot of knowledge and time before deploying the app. So the money you were thinking you saved is wasted in the time you spend in learning all those things. The actual question is, do you actually need all that for your initial stage. So instead of looking more into the specs, you should instead consider the hosting that is much easy on everything. If you talk about major web providers they were actually built for large scale application in mind. One should have proper knowledge about the Kernel and network before deploying the app on a self-managed server.
Types of Hostings
Shared hosting In this hosting the resources of the server are shared among various other websites. This is cheapest as the cost is also shared among others. But if one site gets affected with malware your site will be vulnerable too. This will only happen with a cheap hosting provider as the good ones take the job of security very seriously.
Dedicated hosting In this hosting, you have the complete ownership of the server and control each variable. It's expensive as you have to bear the whole cost. Also, you need to be a technical expert to manage the hosting.
VPS/ Cloud hosting This hosting is most on-demand as it offers the flexibility of scaling the resources as your application size increases and you only pay for what use. But again with this hosting, you need to have technical expertise with the cloud environment.
So for a beginner application, it makes more sense to host it on a managed shared hosting. You dont have to pay much for it and also you dont need any technical expertise. Shared hosting comes with an easy to use console where you can manage everything about your application.
What things to consider?
Support
You dont want to get messed up with hosting problems that come and there is a long list of them, from permissions issues to simple problem like HTACCESS error. A good hosting provider will take care of everything and will make sure that the application should run smooth. You should definitely check for 24 x 7 live chat support that really helps a lot at times.
Availability
You should consider where the server is actually located. Mostly it should be near to the area of usage so that the support time zone matches and also the response time is less.
Security and Backup
A good hosting provider will take the responsibility of security in their own hands. They come with Virus scanner and free SSL certificate and if any threat is detected on the shared server the site is quarantined until the issue is resolved so that the other sites don't get affected. Also, automated backups is a must these days. Daily automated backup can help you rollback to last stable version of your web app without you worrying about anything. Even if you messed everything up.
Hosting environment
This depends on the stack you have and the OS you will need out of Windows and Linux. The most application works with Linux. On top of this, there is managing setup that helps you manage the settings and also upload the code. CPanel is the easiest to use and offers a lot of features.
Uptime, Speed and Limit
Uptime is in percentage that is the time that your website would be guaranteed up. 99.9 % is good enough as the hosting provider needs to apply patches and schedule maintenance. For speed, you can check pingback from any of the hosting websites which should be less than 200 ms. There are 2 types of limits, Bandwidth and storage. There is nothing like unlimited hosting so dont fall for it. Calculate the actual need and go for it. If the need increases which is good, you can expand and also migrate out.
Cost
The first thing is Dont go for free. The hosting provider will lure you and when you are most dependent on the hosting, it will probably ask for the charge. So consider all the above 5 points and choose a decent one. Normally it should be around 10K INR or 120 $.
Conclusion
In my opinion, the initial stage for application development is most complicated as you are struggling with the ideas. At that time adding hosting problem to your list is not a good thing. Shared hosting can take the load from 0 to around 5000 users. Till then you should have gained the confidence about your tech stack and also what kind of hosting you should choose from. On the Next milestone, you can go for Cloud hosting that can help scale to any number of users.
Some good managed shared hosting( not sponsored )that I came across in order as follows -
A2 hosting
Blue Host
Siteground
Hostgator
Reply