What Is a Server?
(ser4ver) (n.) A computer or device on a network that manages network resources. For example, a file server is a computer and storage device dedicated to storing files. Any user on the network can store files on the server. A print server is a computer that manages one or more printers, and a network server is a computer that manages network traffic. A database server is a computer system that processes database queries.
Servers are often dedicated, meaning that they perform no other tasks besides their server tasks. On multiprocessing operating systems, however, a single computer can execute several programs at once. A server in this case could refer to the program that is managing resources rather than the entire computer.
If you're not familiar with the functions of a server, but have heard the term in passing, you may think of a server as some mystical computer beast that performs amazing tasks and generally is a hands-off system. Before we delve into the inner-workings of a server, let's start by dispelling that "mystical" thing. From a hardware perspective, a server is simply a computer on your network that is configured to share its resources or run applications for the other computers on the network. You may have a server in place to handle file or database sharing between all users on your network, or have a server configured to allow all users to share a printer, rather than having a printer hooked up to each individual computer in your organization.
What makes the term server doubly confusing is that it can refer to both hardware and software. That is, it can be used to describe a specific software package running on a computer or the computer on which that software is running. The type of server and the software you would use depends on the type of network. LANs and WANs for example are going to use file and print servers while the Internet would use Web servers. In this article we provide an overview on some of the more common types of servers such as application servers, database servers, mail servers, and Web servers.
Application Server [a Webopedia definition]
Also called an appserver. A program that handles all application operations between users and an organization's backend business applications or databases. Application servers are typically used for complex transaction-based applications. To support high-end needs, an application server has to have built-in redundancy, monitors for high-availability, high-performance distributed application services and support for complex database access.
Print servers are set up on a network to route print requests from other computer workstations on the network. The server handles the print file request and sends the file to the requested printer where it is spooled. A print server allows multiple users on a network to share the printer.
A database server is an application that is based on the client/server architecture model. The application is divided into two parts: a front-end running on a workstation (where users collect and display the database information) and the back-end running on a server where the tasks such as data analysis and storage are performed.
Mail Server [a Webopedia definition]
Almost as ubiquitous and crucial as Web servers, mail servers move and store mail over corporate networks (via LANs and WANs) and across the Internet. Today, most people think of mail servers in terms of the Internet. Mail servers, however, were originally developed for corporate networks (LANs and WANs).
Web Server [a Webopedia definition]
At its core, a Web server serves static content to a Web browser by loading a file from a disk and serving it across the network to a user's Web browser. This entire exchange is mediated by the browser and server talking to each other using HTTP. Any computer can be turned into a Web server by installing server software and connecting the machine to the Internet. There are many Web server software applications, including public domain software from NCSA and Apache, and commercial packages from Microsoft, Netscape and others.
An FTP server is a software application running the File Transfer Protocol (FTP), the protocol for exchanging files over the Internet. FTP works in the same way as HTTP for transferring Web pages from a server to a user's browser and SMTP for transferring electronic mail across the Internet in that, like these technologies, FTP uses the Internet's TCP/IP protocols to enable data transfer. FTP is most commonly used to download a file from a server using the Internet or to upload a file to a server (e.g., uploading a Web page file to a server).
Proxy Server [a Webopedia definition]
A server that sits between a client application, such as a Web browser, and a real server. It intercepts all requests to the real server to see if it can fulfill the requests itself. If not, it forwards the request to the real server. Proxy servers have two main purposes. Proxy servers can dramatically improve performance for groups of users. This is because it saves the results of all requests for a certain amount of time. proxy servers also Filter Requests to block or disallow specific types of outgoing or incoming requests to the server.
Different Servers for Different Jobs
The type of system you would choose for a server depends mainly on its application within your organization; how much data it will be responsible for storing and retrieving, the number of user requests that you expect will be sent to the server, and how many clients will be accessing the server are all things you will need to consider before choosing a server architecture and software package.
A server is not just one piece of equipment that has the capability to perform a specific task. From a basic file/print server, you could be looking at something as common as a Dell PC with 512MB of memory running Windows or Linux and configured to queue network printing. An example of midrange server, used for more intensive database storage and retrieval functions is HP's 900 midrange server with 32 PCI slots and 256GB of memory to handle the extra workload.
As you can see from this introduction to the many types and configurations of servers, the term is probably one of the most ambiguous tech terms you'll ever come across.
Based in Nova Scotia, Vangie Beal is has been writing about technology for more than a decade. She is a frequent contributor to EcommerceGuide and managing editor at Webopedia. You can tweet her online @AuroraGG.
Stay up to date on the latest developments in Internet terminology with a free weekly newsletter from Webopedia. Join to subscribe now.
Like everything in technology, AI touches on so many other trends, like self-driving cars and automation, and Big Data and the Internet of Things... Read More »DevOp's Role in Application Security
As organizations rush to release new applications, security appears to be getting short shrift. DevSecOps is a new approach that holds promise. Read More »Slideshow: Easy Editorial SEO Tips to Boost Traffic
This slideshow reviews five easy on-page editorial SEO tips to help drive organic search engine traffic, including the page title, heading,... Read More »
Java is a high-level programming language. This guide describes the basics of Java, providing an overview of syntax, variables, data types and... Read More »Java Basics, Part 2
This second Study Guide describes the basics of Java, providing an overview of operators, modifiers and control Structures. Read More »The 7 Layers of the OSI Model
The Open System Interconnection (OSI) model defines a networking framework to implement protocols in seven layers. Use this handy guide to compare... Read More »