Web ServerAn application server can build and serve dynamic web pages.
MediaApplication servers can serve static web pages and media such as images and video.
Business LogicApplication servers provide an environment to run code such as Java or PHP to implement business logic such as authorization & authentication, transactions, business rules and data processing.
Web Server IntegrationAlthough application servers can serve web pages and media they aren't necessarily optimized for these functions because it is common to use a separate web server for this purpose. This is considered a best practice because this allows you to secure the application server. In other words, application servers are commonly deployed behind a firewall whereby clients can only request services through a web server. This is highly efficient as web servers can cache responses and serve static content while leaving the heavy lifting of business logic to the application server.
APIsIt is common to build and deploy APIs on an application server that may be used by different types of clients.
Mobile Application ServerApplication servers can provide services to mobile apps. For example, an ecommerce app that calls an application server to retrieve lists of product information.
Desktop ApplicationsIn many cases, desktop software connects to an application server. For example, an MP3 player on a laptop that connects to the internet to retrieve metadata about a song.any type of device to connect to an API running on an application server. For example, an electronic bicycle that connects to an API to retrieve road condition data.
SystemsAlthough application servers are designed to provide services for applications, they are also occasionally used to implement systems. For example, an IoT device with no user interface such as a smart window may connect to services that run on application servers.
IntegrationIt is common for a application server to integrate with a database and a wide range of backend systems. For example, an application server for a banking website that connects to its own database and services for market data, account data and transactions.
High AvailabilityIn many cases, application servers allow for load balancing, clustering and failover such that you can deploy many servers to handle load and achieve high availability.
Cloud DeploymentIt is increasingly common to deploy application servers to cloud infrastructure and use cloud load balancers as opposed to the high availability features of application server products themselves.
MicroservicesMicroservices is a modern architectural technique that involves breaking down business logic into individually deployable services. Microservices are often deployed to application servers on cloud infrastructure. This produces extremely scalable and resilient applications.
|Overview: Application Server
A platform for building and running software that is used by users.
Also Known As