World Library  
Flag as Inappropriate
Email this Article

Application server

Article Id: WHEBN0000165154
Reproduction Date:

Title: Application server  
Author: World Heritage Encyclopedia
Language: English
Subject: Web-based SSH, Zope, Genband, NetDynamics Application Server, Oracle Application Server
Collection: Servers (Computing), Software Architecture
Publisher: World Heritage Encyclopedia

Application server

An application server is a software framework that provides both facilities to create web applications and a server environment to run them.[1]

Most Application Server Frameworks contain a comprehensive service layer model. An application server acts as a set of components accessible to the software developer through an API defined by the platform itself. For Web applications, these components are usually performed in the same running environment as their web server(s), and their main job is to support the construction of dynamic pages. However, many application servers target much more than just Web page generation: they implement services like clustering, fail-over, and load-balancing, so developers can focus on implementing the business logic.[2]

In the case of Java application servers, the server behaves like an extended virtual machine for running applications, transparently handling connections to the database on one side, and, often, connections to the Web client on the other.

Other uses of the term may refer to the services that a server makes available or the computer hardware on which the services run.


  • History 1
  • Java application servers 2
  • .NET Framework 3
    • Microsoft 3.1
    • Third-party 3.2
  • PHP application servers 4
  • Other platforms 5
  • Mobile application servers 6
    • Purpose 6.1
    • Common features 6.2
    • Mobile application servers vs. application servers vs. web servers 6.3
    • Deployment models 6.4
    • Third Party 6.5
  • Advantages of application servers 7
  • See also 8
  • References 9


The term was originally used when discussing early client–server systems to differentiate servers that contain application logic SQL services[3] and middleware servers as distinct from other types of data-servers.

In the late 2000's, because of the ubiquity of the web-browser as an application deployment strategy, there is a mistaken belief that the term refers to a web application environment. However, web applications are within the scope of application-server technologies.

Java application servers

Java Platform, Enterprise Edition or Java EE (was J2EE) defines the core set of API and features of Java Application Servers.

The Web modules include servlets and JavaServer Pages. Enterprise JavaBeans (EJB) are used to manage transactions. According to the J2EE blueprints the business logic of an application resides in Enterprise JavaBeans - a modular server component providing many features, including declarative transaction management, and improving application scalability.

Some Java Application Servers leave off many Java EE features like EJB and Java Message Service (JMS) including Tomcat from Apache, and Jetty from Eclipse Foundation. Their focus is more on Java Servlets and JavaServer Pages.

There are many open source Java application servers that support Java EE including GlassFish from Oracle.

Commercial Java application servers have been dominated by WebLogic Application Server by Oracle, WebSphere Application Server from IBM and the open source JBoss Enterprise Application Platform (JBoss EAP) by Red Hat.

A Java Server Page (JSP) executes in a web container. JSPs provide a way to create HTML pages by embedding references to the server logic within the page. HTML coders and Java programmers can work side by side by referencing each other's code from within their own.

The application servers mentioned above mainly serve web applications, and services via RMI, EJB, JMS and SOAP. Some application servers target networks other than web-based ones: Session Initiation Protocol servers, for instance, target telephony networks.[4]

.NET Framework


Microsoft positions their middle-tier applications and services infrastructure in the Windows Server operating system and the .NET Framework technologies in the role of an application server.[5] 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.[6]


PHP application servers

PHP application servers are used for running and managing PHP applications.

Zend Server, built by Zend Technologies, provides application server functionality for the PHP-based applications., built by TechDivision GmbH is a multithreaded application server for PHP written in PHP.

Other platforms

Open-source application servers also come from other vendors, such as Appaserver.

Non-Java offerings have no formal interoperability specifications on par with the Java Specification Request. As a result, interoperability between non-Java products is poor compared to that of Java EE based products.

Mobile application servers

A mobile app server is mobile middleware that makes back-end systems accessible to mobile applications to support Mobile application development. Much like a web server that stores, processes and delivers web pages to clients, a mobile app server bridges the gap from existing infrastructure to mobile devices.


Although most standards-based infrastructure (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:[7]

  • Limited resources – mobile devices have limited power and bandwidth
  • Intermittent connectivity[8] – cellular service and wifi coverage is often not continuous
  • Difficult to secure[9] – mobility and BYOD make it hard to secure mobile devices

The purpose of a mobile application server is to build on existing infrastructure to accommodate mobile devices.

Common features

Core capabilities of a 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 support– allows users to access and use data even though device is not connected
  • Security– data encryption, device control, SSL, call logging

Mobile application servers vs. application servers vs. web servers

Mobile application servers, Application servers, and web servers serve similar purposes: they are a piece of middleware that connects back-end systems to the users that need to access them, but the technology in each of the three differs. Application servers - developed before the ubiquity of web-based applications - expose back-end business logic through various protocols, sometimes including HTTP, and manage security, transaction processing, resource pooling, and messaging.[10] When web-based applications grew in popularity, application servers did not meet the needs of developers, and the web server was created to fill the gap.

Web servers provide the caching and scaling functionality demanded by web access and not provided by application servers. They convert requests to static content, and serve only HTTP content.[11] Over time, application servers and web servers have morphed from two previously distinct categories, blended features, and arguably have merged.

Mobile application servers are on a similar path. The emergence of mobile devices presents the need for functionality not anticipated by the developers of traditional application server developers, and mobile application servers fill this gap. They take care of the security, data management and off-line requirements not met by existing infrastructure, and present content exclusively in REST.

Over time, these three categories may fully merge and be available in a single product, but the root functions differ.

Deployment models

A mobile application server can be deployed :

Third Party

Advantages of application servers

Data and code integrity
By centralizing business logic on an individual server or on a small number of server machines, updates and upgrades to the application for all users can be guaranteed. There is no risk of old versions of the application accessing or manipulating data in an older, incompatible manner.
Centralized configuration
Changes to the application configuration, such as a move of database server, or system settings, can take place centrally.
A central point through which service-providers can manage access to data and portions of the application itself counts as a security benefit, devolving responsibility for authentication away from the potentially insecure client layer without exposing the database layer.
By limiting the network traffic to performance-tier traffic the client–server model improves the performance of large applications in heavy usage environments.
Total cost of ownership (TCO)
In combination, the benefits above may result in cost savings to an organization developing enterprise applications. In practice, however, the technical challenges of writing software that conforms to that paradigm, combined with the need for software distribution to distribute client code, somewhat negate these benefits.
Transaction Support
A transaction represents a unit of activity in which many updates to resources (on the same or distributed data sources) can be made atomic (as an indivisible unit of work). End-users can benefit from a system-wide standard behaviour, from reduced time to develop, and from reduced costs. As the server does a lot of the tedious code-generation, developers can focus on business logic.

See also


  1. ^ "What is an App Server?". Retrieved 2010-02-28. an application server provides an environment where applications can run, no matter what the applications are or what they do 
  2. ^ Stefano Ceri, Piero Fraternali, Aldo Bongio, Marco Brambilla, Sara Comai, Maristella Matella. "Designing Data Intensive Web Applications, 2Q03". 
  3. ^ "Analysis in the Application Server Environment".  
  4. ^ "Application Server". Retrieved 2015-10-16. 
  5. ^ TechNet: Application Server
  6. ^ TechNet: Application Server Role
  7. ^ "Why Mobile App Development Requires More than an SOA date=19 November 2014". 
  8. ^ "Why offline access is a game-changer for enterprise mobility". 17 October 2013. 
  9. ^ "A Billion Smartphone Users May Be Affected by the Heartbleed Security Flaw". 11 April 2014. 
  10. ^ "App server, Web server: What's the difference?". 
  11. ^ "What is the difference between application server and web server?". 
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.

Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.