Anapplication server is aserver that hosts applications[1] orsoftware that delivers abusiness application through acommunication protocol.[2] For a typicalweb application, the application server sits behind theweb servers.
An applicationserver framework is a service layer model. It includessoftware components available to asoftware developer through anapplication programming interface. An application server may have features such asclustering,fail-over, andload-balancing. The goal is for developers to focus on thebusiness logic.[3]
Jakarta EE (formerly Java EE or J2EE) defines the core set of API and features ofJava application servers.
The Jakarta EE infrastructure is partitioned into logical containers.
Microsoft's .NET positions their middle-tier applications and services infrastructure in theWindows Server operating system and the.NET Framework technologies in the role of an application server.[4] The Windows Application Server role includesInternet Information Services (IIS) to provide web server support, the .NET Framework to provide application support,ASP.NET to provideserver side scripting, COM+ for application component communication, Message Queuing for multithreaded processing, and theWindows Communication Foundation (WCF) for application communication.[5]
PHP application servers run and managePHP applications.
Mobile application servers provide data delivery to mobile devices.
Core capabilities of mobile application services include
Although most standards-basedinfrastructure (includingSOAs) 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:[6]
An application server can be deployed:
an application server provides an environment where applications can run, no matter what the applications are or what they do
[A]n application server exposes business logic to client applications through various protocols
{Table Web Interfaces}