Server Software System
A Server Software System is a network software that specializes in responding to client requests (to provide network services).
- AKA: Server Program, Service Software.
- Context:
- It can typically handle Client Connections through socket listeners.
- It can typically process Service Requests through request handlers.
- It can typically manage Server Resources through resource allocation.
- It can (typically) manage overall system resources and computational processes.
- It can (typically) integrate hardware components with software components.
- It can (typically) process client requests and manage service state.
- It can (typically) maintain service availability and resource allocation.
- It can often maintain Service State through state management.
- It can often ensure Service Availability through reliability measures.
- It can often implement Protocol Handlers through protocol implementations.
- It can often provide Service Interfaces through api endpoints.
- It can often maintain Service Logs through logging systems.
- ...
- It can range from being a Simple Server Software to being a Complex Server Software, depending on its service complexity.
- It can range from being a Single Service Server to being a Multi Service Server, depending on its service scope.
- It can range from being a Lightweight Server to being an Enterprise Server, depending on its deployment scale.
- It can range from being a Request-Response Server to being a Push-Based Server, depending on its communication pattern.
- It can range from being a Synchronous Server to being an Asynchronous Server, depending on its interaction model.
- It can range from being a HTTP Based Server to being a WebSocket Based Server, depending on its protocol model.
- ...
- It can control Access Permissions through authentication systems.
- It can monitor Service Performance through monitoring systems.
- It can integrate with Load Balancer for request distribution.
- It can support Service Discovery for server registration.
- ...
- Examples:
- Application Server Softwares, such as:
- Data Server Softwares, such as:
- Database Server Softwares, such as:
- File Server Softwares, such as:
- Communication Server Softwares, such as:
- Infrastructure Server Softwares, such as:
- Content Server Softwares, such as:
- CMS Server Softwares, such as:
- Document Server Softwares, such as:
- Interface Server Softwares, such as:
- API Server Softwares, such as:
- Event Server Softwares, such as:
- ...
- Counter-Examples:
- Client Software, which sends requests rather than serving them.
- Peer Software, which acts as both client and server equally.
- Desktop Software, which runs local processes rather than network services.
- See: Client-Server Architecture, Network Protocol, Service Architecture, System Software, Network Programming.
References
2011
- http://en.wikipedia.org/wiki/Server_%28computing%29
- A server is a system (software and suitable computer hardware) that responds to requests across a computer network to provide, or help to provide, a network service. Servers can be run on a dedicated computer, which is also often referred to as "the server", but many networked computers are capable of hosting servers. In many cases, a computer can provide several services and have several servers running.
Servers operate within a client-server architecture, servers are computer programs running to serve the requests of other programs, the clients. Thus, the server performs some task on behalf of clients. The clients typically connect to the server through the network but may run on the same computer. In the context of Internet Protocol (IP) networking, a server is a program that operates as a socket listener.[1]
Servers often provide essential services across a network, either to private users inside a large organization or to public users via the Internet. Typical computing servers are database server, file server, mail server, print server, web server, gaming server, application server, or some other kind of server.[2]
- A server is a system (software and suitable computer hardware) that responds to requests across a computer network to provide, or help to provide, a network service. Servers can be run on a dedicated computer, which is also often referred to as "the server", but many networked computers are capable of hosting servers. In many cases, a computer can provide several services and have several servers running.
Numerous systems use this client / server networking model including Web sites and email services. An alternative model, peer-to-peer networking enables all computers to act as either a server or client as needed.
- ↑ Windows Server Administration Fundamentals. Microsoft Official Academic Course. 111 River Street, Hoboken, NJ 07030: John Wiley & Sons. 2011. pp. 2–3. ISBN 978-0-470-90182-3.
- ↑ Comer, Douglas E.; Stevens, David L. (1993). Vol III: Client-Server Programming and Applications. Internetworking with TCP/IP. Department of Computer Sciences, Purdue University, West Lafayette, IN 47907: Prentice Hall. pp. 11d. ISBN 0-13-474222-2.
2011
- http://en.wikipedia.org/wiki/Server_%28computing%29#Types_of_servers
- In a general network environment the following types of servers may be found.
- Application server, a server dedicated to running certain software applications
- Catalog server, a central search point for information across a distributed network
- Communications server, carrier-grade computing platform for communications networks
- Database server, provides database services to other computer programs or computers
- Fax server, provides fax services for clients
- File server, provides file services
- Game server, a server that video game clients connect to in order to play online together
- Home server, a server for the home
- Name server or DNS server
- Print server, provides printer services
- Proxy server, acts as an intermediary for requests from clients seeking resources from other servers
- Sound server, provides multimedia broadcasting, streaming.
- Standalone server, an emulator for client–server (web-based) programs
- Web server, a server that HTTP clients connect to in order to send commands and receive responses along with data contents
- Almost the entire structure of the Internet is based upon a client–server model. High-level root nameservers, DNS servers, and routers direct the traffic on the internet. There are millions of servers connected to the Internet, running continuously throughout the world.
- Virtually every action taken by an ordinary Internet user requires one or more interactions with one or more servers.
- In a general network environment the following types of servers may be found.