An application server is a
server that hosts applications or
software that delivers a business application through a
communication protocol.
An application
server framework is a service layer model. It includes
software components available to a
software developer
Software development is the process of conceiving, specifying, designing, Computer programming, programming, software documentation, documenting, software testing, testing, and Software bugs, bug fixing involved in creating and maintaining applic ...
through an application programming interface. An application server may have features such as clustering,
fail-over
Failover is switching to a redundant or standby computer server, system, hardware component or network upon the failure or abnormal termination of the previously active application, server, system, hardware component, or network in a computer net ...
, and
load-balancing. The goal is for developers to focus on the
business logic.
Java application servers
Jakarta EE (formerly Java EE or J2EE) defines the core set of API and features of
Java application servers.
The Jakarta EE infrastructure is partitioned into logical containers.
*EJB container:
Enterprise Beans are used to manage transactions. According to the
Java BluePrints, the
business logic of an application resides in
Enterprise Beans—a modular server component providing many features, including declarative transaction management, and improving application
scalability.
*
Web container: the web modules include
Jakarta Servlets and
Jakarta Server Pages (JSP).
* JCA container (
Jakarta Connectors
Jakarta Connectors (JCA; formerly Java EE Connector Architecture and J2EE Connector Architecture) is a Java programming language tool for connecting application servers and enterprise information systems (EIS) as part of enterprise application i ...
)
* JMS provider (
Jakarta Messaging)
Commercial Java application servers have been dominated by
WebLogic Application Server by
Oracle
An oracle is a person or agency considered to provide wise and insightful counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. As such, it is a form of divination.
Description
The word '' ...
,
WebSphere Application Server from
IBM and the open source
JBoss Enterprise Application Platform (JBoss EAP) by
Red Hat
Red Hat, Inc. is an American software company that provides open source software products to enterprises. Founded in 1993, Red Hat has its corporate headquarters in Raleigh, North Carolina, with other offices worldwide.
Red Hat has become ass ...
.
Microsoft
Microsoft's .NET positions their middle-tier applications and services infrastructure in the
Windows Server operating system and the
.NET Framework
The .NET Framework (pronounced as "''dot net"'') is a proprietary software framework developed by Microsoft that runs primarily on Microsoft Windows. It was the predominant implementation of the Common Language Infrastructure (CLI) until bein ...
technologies in the role of an application server. The Windows Application Server role includes Internet Information Services (IIS) to provide web server support, the .NET Framework to provide application support, ASP.NET to provide server side scripting, COM+ for application component communication, Message Queuing for multithreaded processing, and the Windows Communication Foundation (WCF) for application communication.
PHP application servers
PHP application servers run and manage
PHP applications.
*
Zend Server, built by
Zend, provides application server functionality for the PHP-based applications.
*
appserver.io
appserver.io is an application server for PHP based web environments. The project consists of middleware which delivers classical PHP web applications and provides additional services.
History
The basic idea of a WildFly equivalent for PHP was p ...
, built by TechDivision GmbH is a multithreaded application server for PHP written in PHP.
*
RoadRunner, built by Spiral Scout is a high-performance PHP application server, load-balancer, and process manager written in
Go.
Third-party
*
Mono (a cross platform open-source implementation of .NET supporting nearly all its features, with the exception of Windows OS-specific features), sponsored by
Microsoft and released under the
MIT License
Mobile application servers
Mobile application servers provide data delivery to mobile devices.
Mobile features
Core capabilities of mobile application services include
* Data routing– data is packaged in smaller (
REST) objects with some business logic to minimize demands on bandwidth and battery
* Orchestration– transactions and data integration across multiple sources
* Authentication service– secure connectivity to back-end systems is managed by the mobile middleware
*
Off-line
In computer technology and telecommunications, online indicates a state of connectivity and offline indicates a disconnected state. In modern terminology, this usually refers to an Internet connection, but (especially when expressed "on line" ...
support– allows users to access and use data even though the device is not connected
* Security– data encryption, device control, SSL, call logging
Mobile challenges
Although most standards-based
infrastructure
Infrastructure is the set of facilities and systems that serve a country, city, or other area, and encompasses the services and facilities necessary for its economy, households and firms to function. Infrastructure is composed of public and priv ...
(including
SOAs) are designed to connect to any independent of any vendor, product or technology, most enterprises have trouble connecting back-end systems to mobile applications, because mobile devices add the following technological challenges:
* Limited resources – mobile devices have limited power and bandwidth
* Intermittent connectivity – cellular service and wifi coverage is often not continuous
* Difficult to secure
– mobility and
BYOD
Bring your own device (BYOD )—also called bring your own technology (BYOT), bring your own phone (BYOP), and bring your own personal computer (BYOPC)—refers to being allowed to use one's personally owned device, rather than being required to u ...
practices make it hard to secure mobile devices
Deployment models
An application server can be deployed:
*
On premises
On-premises software (abbreviated to on-prem, and incorrectly referred to as on-premise) is installed and runs on computers on the premises of the person or organization using the software, rather than at a remote facility such as a server farm ...
*
Cloud
* Private cloud
*
Platform as a service (PaaS)
See also
*
Application service provider
*
List of application servers
References
{{DEFAULTSORT:Application Server
Servers (computing)
Software architecture