Server (computer)

From Citizendium
Revision as of 18:34, 20 February 2007 by imported>ZachPruckowski
Jump to navigation Jump to search

A server is a computer that is used to "serve" content to other computers. There are many types of servers, including file servers, web servers, and database servers. A server responds to the requests of a client. The client communicates with a server by using a protocol to request and receive information.

A server can consist of any sort of computer, from an personal computer to a multi-thousand dollar server. A server is primarily defined by its function and software rather than any particular hardware.

Components

The primary components of a server are similar to the primary components of a personal computer or most other computers. However, a server is generally designed to do a single task as efficiently as possible, whereas most other computers are designed to be general-purpose.

Each server function uses hardware differently. For instance, a file server often does not need as powerful a processor as a database server.

Processor

Unlike personal computers, many servers use more than one socket. This means that servers often use multiprocessor-enabled processors like Intel Xeons and AMD Opterons. Servers can use as few as 1 and as many as 16 sockets (generally in multiples of 2). As the number of sockets increase, bandwidth becomes a crucial factor as several processors need to communicate with the RAM, the peripherals, and each other. Hypertransport is extremely useful in multi-socket configurations to deal with bandwidth problems, and is supported in PowerPC and AMD chips.

Hard Drives

Hard drives are important in servers, because they store the content that the servers provide. In addition to storage capacity, hard drive speed and reliability play a large role in servers. Hard drive bandwidth, as measured in MB/s is a crucial benchmark, especially for web servers or database servers. Additionally, servers which require random hard drive reads/writes (as opposed to sequential reads/writes) are heavily dependent on speed as measured in RPMs.

Servers using external storage make use of Fibre Channel, eSATA, or network storage.

Servers frequently make use of RAIDs to achieve maximum performance or reliability.

Memory

Servers often favor higher memory bandwidth to memory latency, and as a result use technologies like quad-channel RAM and Fully-Buffered DIMMs. Additionally, servers using 64-bit CPUs often have large RAM capacities, up to 64 GB. Servers often use RAM to cache content they serve, since has a much lower access latency than hard drives.

Networking

A server's primary role is providing content, and thus networking is essential. Most servers have two to four gigabit Ethernet ports, and the highest-end servers have one or more 10-gigabit ports.

Form Factors

Servers can come in all different shapes and sizes, but most servers fall into three categories.

Tower

Rackmount

Blade

Functions

Webserver

Database Server

File Server

Network Services Server