Server (computing)
Contents
Server (computing)
In computing, a server is a computer program or a device that provides a resource, data, service, or program to other computers, called clients, over a network. Essentially, a server is designed to "serve" the needs of clients by responding to their requests.
The concept is part of the Client–server model, where clients initiate communication by requesting a service or resource, and the server waits for requests and provides the requested resource or service.
It's important to understand that the term "server" can refer to both the software program that provides a service and the physical computer that runs that software.
Server Software vs. Server Hardware
- Server Software: This is the program that performs the "serving" function. For example, a web server program (like Apache or Nginx) listens for requests for web pages and sends them to the client's web browser. A database server program manages databases and responds to queries from database clients.
- Server Hardware: This is the physical computer machine that runs the server software. Server hardware is often specifically designed for the role, built to be reliable, powerful, and capable of running continuously for long periods.
Typically, server hardware runs an operating system (like Windows Server or a Linux distribution optimized for servers) that allows the server software to operate and manage the computer's hardware.
Types of Servers (by Function)
Servers are often categorized by the type of service they provide:
- Web Server: Stores and delivers web pages to clients (web browsers) using the HTTP protocol. (e.g., Apache HTTP Server, Nginx).
- File Server: Stores and manages files, allowing clients to access, store, and manage data centrally (e.g., Samba, NFS).
- Database Server: Runs a database system and provides other programs or computers with query and data services (e.g., MySQL, PostgreSQL, Microsoft SQL Server).
- Mail Server: Handles the sending, receiving, and storage of email (e.g., Postfix, Exim, Microsoft Exchange Server).
- Application Server: Hosts and runs applications or parts of applications, providing the business logic and processes that clients can access (e.g., Apache Tomcat, Oracle WebLogic Server).
- DNS Server: Translates human-readable domain names (like google.com) into IP addresses that computers use to locate each other on the network.
- Proxy Server: Acts as an intermediary for requests from clients seeking resources from other servers. Can be used for security, caching, or filtering.
There are many other types of servers for various specific services, such as game servers, print servers, and streaming media servers.
Server Hardware Characteristics
Server hardware is often more robust and powerful than typical desktop computers because it needs to handle many requests simultaneously and run without interruption. Common characteristics include:
- More powerful and numerous CPUs.
- Larger amounts of RAM.
- High-speed and large-capacity storage (often using SSDs and RAID configurations for performance and redundancy).
- Redundant components like power supplies and network interfaces to prevent downtime if one fails.
- Designed for continuous operation ("24/7").
- Features like hot-swappable drives that can be replaced without turning the server off.
Servers are typically housed in data centers or server rooms with controlled environments (cooling, power, security).
Usage
Servers are fundamental to modern computing and networking. They are used in:
- Powering the Internet (web servers, mail servers, DNS servers).
- Enterprise networks (file servers, database servers, application servers).
- Cloud computing (cloud platforms are built on vast numbers of servers).
- Online services and applications.
Any time you access a website, send an email, use an online application, or store files in a shared network location, you are interacting with one or more servers.
See Also
- Client–server model
- Client (computing)
- Networking
- Data center
- Web server
- File server
- Database server
- Mail server
- Application server
- DNS server
- Proxy server
- Hardware (computing)
- Software
- Operating system
References
Template:Cite web
The Template is currently placeholder template is used to create citations for material published on the World Wide Web or other online resources that do not fit other citation template types (e.g., online news articles might use Template is currently placeholder). It is intended to provide a standardized and consistent format for citing web pages within articles. - Technical definition.
Template:Cite web
The Template is currently placeholder template is used to create citations for material published on the World Wide Web or other online resources that do not fit other citation template types (e.g., online news articles might use Template is currently placeholder). It is intended to provide a standardized and consistent format for citing web pages within articles. - Explanation from a major server vendor.
Template:Cite web
The Template is currently placeholder template is used to create citations for material published on the World Wide Web or other online resources that do not fit other citation template types (e.g., online news articles might use Template is currently placeholder). It is intended to provide a standardized and consistent format for citing web pages within articles. - Explains the client-server model in the context of the web.