To make your website visible on the web, your website’s files and data must be physically stored on a computer that is connected to the Internet. These large high-powered computers are called web servers.
Website hosts are companies that physically house several web servers in one location, or what is sometimes referred to as a data center. In addition to housing the web servers, website hosts provide the software, security, support, and bandwidth that connects your website to the internet.
Think of a website hosting company like a shopping center that contains several individual stores. If you want to open a store at the shopping center, you can lease space in it and set up shop. Just like a shopping center, website hosting companies enable you to lease space on their web servers, where you can store your website files and make them available for visitors to view on the Internet.
To accommodate a wide variety of websites and customer needs, there is a variety of hosting solutions. Hosting solutions are broadly categorized based on the amount of server space you need for your website files and the monthly amount of bandwidth your site consumes. Bandwidth refers to the amount of data being transferred or the amount of resource usage your website requires.
Consider your shop again… Suppose you sell only handmade bracelets; you have a small, unique product offering, so you don’t need, nor want, to lease the same amount of space as a big department store. Instead, you could lease a smaller store in the shopping center that gives you just enough space for your goods and costs less money.
Additionally, because you’re a small shop you don’t need a lot of extra technology or staff to help you sell your product as a department store requires. Between you and your mobile payment device, you have plenty of bandwidth to take care of your customers and don’t need to buy any extra technology or hire more employees.
Make sense? Beyond server space and bandwidth, there are other things to consider when selecting a hosting solution: your budget, ease of use or complexity of the solution, the level of flexibility or customization the solution allows, as well as privacy and security features.
What is a server?-
A server is basically a dedicated computer that provides services on behalf of clients, such as ordinary desktop computers or workstations. So it’s a centralized machine where multiple clients connect to, either over the Internet or in a local area network, and they connect to a server for a specific service. So for example, that service could be to retrieve a website, to access data, or email, and so on. Now a server could be dedicated to handle one of these services only, where you would have one server is dedicated for a website, one server for data storage, and a server for email. And this model is what larger organizations use.
Or you can also set up a server to handle each of these services on the same machine which is what typically happens in smaller organizations. So depending upon which setup is used it all depends on the needs of an organization. Now when people talk about a server generally they are referring to a powerful centralized computer that clients connect to over a network, and they would be correct on that. However, a server is not just a physical computer.
A server is actually a role that a computer takes. Because any ordinary desktop computer can be set up as a server and it doesn’t necessarily have to be a powerful computer. So for example you can set up a network in your home where you can have an ordinary desktop computer serve as a file server.
The computer would have those files in a shared folder and then other computers can’t connect to it to access those files. Or you can also use a desktop computer to serve as a web server, where you would install the website data on that computer and then the other computers can connect to it and retrieve the webpage. However, desktop computers do have their limitations because they are not designed to handle a large workload and they can’t handle a lot of incoming connections from users. And this is not only because of their inferior hardware, but it’s also because of software.
Because desktop operating systems are only able to handle a limited amount of concurrent connections. Now servers need to be up and running 24/7 because they are vital to an organization. And if a server does go down then that could jeopardize a business or an organization. So this is why servers need to be more reliable. They need to be built with robust hardware that’s able to run non-stop with little to no downtime. So for example, a desktop would use a processor that’s designed obviously for desktops, such as the Intel Core series processors. And a server would use a processor designed for servers such as the Intel Xeon processor. A server processor needs to be fast and had the ability to perform a lot of tasks simultaneously. Now both of these processors are powerful but there are some differences. So for example, Xeon processors support a multi-processing environment. So they are designed to work with other processors. This means you can put two or more Xeon processors on a motherboard designed for servers, which is what a lot of servers need to handle a large workload.
But desktop processors do not support this, they are only designed to work by themselves and not with other processors. And another difference is that Xeon processors support ECC RAM, which is error code correcting memory. And this type of memory is what’s mainly used in servers. Now servers need to be up and running at all times and memory errors could bring down a server and what ECC does is that it detects if the data was correctly processed by the RAM module and it makes a correction if it needs to prevent memory errors.
So using ECC memory in servers is just an extra precaution to guard against any errors to prevent a server from shutting down and Intel Core processors do not support ECC Ram, however, AMD processors do so support it. Xeon processors can also support a larger amount of RAM. They would have a larger cache memory. And they would also have a higher core count than desktop processors. And a server should also have hot-swappable hard drives in a RAID configuration because if a hard drive were to fail then no data loss happened and the server would still be up and running because of RAID. RAID is what copies that data on multiple disks and if a hard drive were to fail then it can be removed and replaced without shutting down the server. And then RAID would rebuild the data on the new hard drive automatically. And a server should also have redundant power supplies to keep the server up and running in case of a power supply failure.