This page regards the computer server, not to be confused with a waiter/waitress or someone who servers something
Kinds of Servers
- Web servers - Offer webpages and webpage-related files (a website) usually using the Hyper-Text Transfer Protocol or Hyper-Text Transfer Protocol Secure
- File servers - Offer files not directly related to a specific website (there will sometimes be a comparatively small website on the same server to aid in distribution) using the Hyper-Text Transfer Protocol
- FTP servers - A kind of file server which uses the File-Transfer Protocol rather than the more common Hyper-Text Transfer Protocol of the previous type
- Proxy servers - Go-between servers which web traffic may be tunneled to for privacy or restriction avoidance
- Game servers - Enable clients to play games online with other clients
Servers are often grouped into server clusters. These clusters usually consist of at least two server computers which could operate independently. They are generally made to improve performance of a website or other virtual server—this is especially important for popular websites. For example, each server computer may support up to 1,000 clients, but if a website receives more than this at a time, it will be overloaded. With a cluster, however, clients will be distributed throughout the available servers to avoid overload.
Many large websites and services use clusters, including Amazon.
Clusters are also typically used for cloud computing architecture. A large cluster of servers is virtually merged into one, and virtual machines are run on this resource pool as needed.
A newer method of running certain backend services on the cloud is called "serverless computing," sometimes known as "Backend-as-a-Service" While it is still technically being run on someone's server somewhere, the serverless hosting customer never sees or maintenance the server itself. Rather, they provide code or a scrip which is executed by the hosting provider, and the provider worries about the rest. Although this sound simple (and often is), it also tends to be inexpensive. Most providers only charge for the amount of time certain resources are used by the client's script, making this a very economical option for some.