What is shared hosting? Shared hosting shares server hardware with multiple websites. The limit for each website is set by the shared hosting service provider. You will have no idea with which website you are sharing your server with. I have put a technical guide on how to choose a shared hosting service provider for your website. I have only considered Linux Shared hosting as it is the most used and suitable for most programming language.
Let’s see an example of what is shared hosting?
Shared Hosting means a single CPU host multiple websites. Let’s consider a computer system. It has 500 GB HDD, 16GB ram, and an i5 Processor with 8 core processors. Now a shared hosting service provider will sell this server as shared hosting. And multiple websites can be hosted in this single server. Space will be managed accordingly by the web hosting service provider.
You see unmetered disk space and unmetered bandwidth in shared hosting. You might wonder what is that? It is just a marketing technique for selling web hosting.
Unmetered means you will have access to the resources as long as your website does not cross the limit set by the shared hosting service provider. The web hosting service provider does not limit bandwidth and storage space. You have to see the terms and condition for the limit before buying a shared hosting, which will help to understand their terms. And also avoid any possibilities by which you can violate them, which can lead to a suspension of your account.
A single server can host hundreds of website, and all the resources distributed percentage-wise. In short, it is like sharing a rented apartment with your friends
Let’s understand the things you need to look before buying a shared hosting
One of the important factors which affect your website speed and performance is your server hardware. Like RAM, CPU, HDD or SSD, I/O usage, IOPS, Number of Processes, inodes(number of files), number of database and database size and most important the Bandwidth. If you want to understand in detail please see our comprehensive guide here. Here I will explain in short.
RAM (Physical memory)
Random-access memory is an essential part of your server requirements. RAM is responsible for holding the data required for running your application/website. More RAM determines faster the applications runs. If your server has low RAM, you will see 500 internal server error.
CPU (Processing power)
CPU (Central processing unit) is the brain behind your website. It handles all your website/application calculation and logic. The CPU surge can occur your website code is not optimized properly.
HDD or SSD
HDD and SSD is a storage system, which will store your website/application files. Though HDD is slower in retrieving data than SSD. Though in Shared hosting you will get HDD, some shared hosting service provider can provide SSD, but the cost will be higher
I/O usage determines how fast a script or website can carry out the input and output operation per second. It is the speed using which data can be transferred from disk to RAM. When the I/O usage exceeds you might see 500 internal server error
Inputs outputs per second. It is the speed at which the storage (HDD or SSD) writes or retrieves data. Higher the IOPS faster the reading and writing time of data, which in turn will increase the speed of the website
Number of process
The total number of the process includes Emails, FTP, IMAP, SSH connections. My Hostinger cloud hosting provides 100 number of process, which means 100 concurrent processes will run at the same time. If the process exceeds then you will see the error. Though this is a very rare situation as the opening and closing of a process is very quick, it hardly takes a sec.
My earlier GoDaddy Shared deluxe hosting provided 115 number of process.
An entry process defines, how many PHP scripts can run at the same time. If your shared hosting has 50 entry process this means it can run PHP scripts concurrently. Entry process only takes around a second. So overlapping of the process rarely happens. If you have poor PHP scripts in your website, then there is a chance you will see your entry process is full, and see 508 error.
Inodes are the number of files and folders your hosting is allowing you to store in your HDD or SSD. On average, shared hosting has 250,000 inodes or file usage. A cloud or VPS hosting has 1-2 million Inodes.
Number of Database and size
A number of database limits show how many databases you can create in your hosting. And the size limits the total size of all databases.
Generally, shared hosting provides a 1-10 number of database, or some shared hosting does not limit the creation of a database, as long as we abide by there terms and conditions. Like your database tables should not exceed a certain number (for example 500 or 1000 tables per database)
In the same way, some shared hosting limits the size of the database and some don’t. You have to abide by the terms and conditions to avoid suspension.
Bandwidth is one of the most important aspects to look for when buying the hosting. It is the limit of data you can transfer to and from the server/month. It includes file uploads and downloads via FTP. All the HTTP & HTTPS request sent to open your website, emails sent and received on your server. The pages visited by users on your website, pretty much everything that you do on your website is used to calculate your bandwidth.
Let’s say you have a web page with size 100kB, and you get around 500 daily visits and each visitor visits 5 pages. You would require around 7.5 GB of bandwidth per month. You can calculate your bandwidth using this link
The page size is quite important, the larger the page size more the bandwidth is required.
The location of your server is quite an important factor. It affects your website loading speed. If your website is hosted in California US, and most of your visitors are from India, then loading speed of your website will be slow. It is always best to choose the location where you get your most traffic from. This is mostly due to latency which is low because of the distance. The farther the users visiting your website the slower your website loading speed.
When talking about security a web hosting service provider should provide the best security as their server is going to be used to host multiple websites. Any security breach can cause a lot of damage to a lot of business.
You as a user should check whether the web hosting service provider is having a secure server with proper firewall and other security measures to avoid any attack on their servers.
The hosting provider should also provide SSL (Secure socket layer) for your website. It should take a proper backup from time to time. The firewall should check for malware attacks and more. Please read this article for detailed security steps a hosting provider should take.
When it comes to supporting, you have to make sure the web hosting service provider has multiple ways using which you can contact them. Like Chat, ticket, email, phone. Also make sure that they respond quickly, which shows their seriousness towards there customers.
If a shared hosting service provide does not have proper support, you will have issues if you are not a technical person to setup your website. Also you could run into issues which needs to be solved, and if the support is good it will be of great help.
Shared hosting for your business
Shared hosting is a good option for a new website, the new website does not have much traffic and they can’t afford expensive cloud, VPS or dedicated hosting. You can use shared hosting as long as you don’t have high traffic and engagement on your website. Around 3-5k visitors per day is what shared hosting can manage. Though this number will vary on what platform your website is made, how efficiently you have optimized your website.
3-5k visitors/day is something that most small business cannot reach quickly. It takes proper marketing and branding to reach 3-5k visitors daily. So it is good to go for shared hosting and invest your money in marketing and branding.
The cost of shared hosting starts around Rs 120/month and can go up to Rs 900/month. This is the cost of Linux shared hosting.
You can select Bigrock, Bluehost, HostGator, Hostinger or GoDaddy and A2hosting.
- Low Cost
- Good for new beginner website
- Good for a small and simple website with low traffic
- Easy to use
- Server crashes
- Performance issue
- Not scalable
Good for application like
- New websites
- Small business with low traffic
- Personal websites
Shared hosting is good for a new and small website, as it can save you a lot of money. The key is to have a well-optimized website, rather than just switching your hosting. All the shared hosting service providers mentioned above are personally used by me for different clients, so all of them are trusted and provide good service. Hope this technical guide will help you choose the right shared hosting for your website.
Also published on Medium.