Comparison of application servers

Application servers are system software upon which web applications or desktop applications run. Application Servers consist of web server connectors, computer programming languages, runtime libraries, database connectors, and the administration code needed to deploy, configure, manage, and connect these components on a web host. An application server runs behind a web Server (e.g. Apache or Microsoft IIS) and (almost always) in front of an SQL database (e.g. PostgreSQL, MySQL or Oracle). Web applications are computer code which run on top of application servers and are written in the language(s) the application server supports and call the runtime libraries and components the application server offers.

There are many application servers and the choice impacts the cost, performance, reliability, scalability, and maintainability of a web application.

Proprietary application servers provide system services in a well-defined but proprietary manner. The application developers develop programs according to the specification of the application server. Dependence on a particular vendor is the drawback of this approach.

An opposite but analogous case is the Java EE platform discussed below.

Java EE application servers provide system services in a well-defined, open, industry standard. The application developers develop programs according to the Java EE specification and not according to the application server.

A Java EE application developed according to Java EE standard can be deployed in any Java EE application server making it vendor independent.

This article compares the features and functionality of application servers, grouped by the hosting environment that is offered by that particular application server.

BASIC

C

C++

Erlang

Haskell

Java

Main article: Web container
Product Vendor Edition Last release date Java EE
compatibility [3]
Servlet
spec
JSP
spec
License
ColdFusion Adobe Systems 10.0.11 2013-07-09 6 2.5 2.1 Proprietary
Dynamo AS ATG 6.3 2005-03 1.3 2.3 1.2 Proprietary
Enhydra Lutris 5.1.9 2005-03-23 No GPL
Enterprise Server Borland 6.7 2007-01 1.4 2.4 2.0 Proprietary
Geronimo ASF 3.0.1 2013-05-28 6 Full Platform 3.0 2.2 Apache License
GlassFish GlassFish Community 4.1 2014-09 7 Full Platform 3.1 2.3 CDDL, GPL
iPlanet Web Server Oracle Corporation 7.0.21 2015-04 Yes[4] 2.5 2.1 Proprietary
JBoss Enterprise Application Platform Red Hat 6.3.0.GA 2014-08-06 6 Full Platform 3.0 2.2 LGPL
Jetty Eclipse Foundation 9.2.6 2014-12-05 7 (partial[5]) 3.1 2.3 Apache 2.0, EPL
JEUS TmaxSoft 7 2012-06 6 Full Platform 3.0 2.2 Proprietary
JOnAS OW2 Consortium (formerly ObjectWeb) 5.3 2013-10-04 6 Web Profile 3.0 2.2 LGPL
JRun Adobe Systems 4 updater 7 2007-11-06 1.3 2.3 1.2 Proprietary
NetWeaver Application Server SAP AG 7.3 2011-05-31 5 2.5 2.1 Proprietary
Oracle Containers for J2EE Oracle Corporation 10.1.3.5.0 2009-08 1.4 2.4 2.0 Proprietary
Orion Application Server IronFlare 2.0.7 2006-03-09 1.3 2.3 1.2 Proprietary
Resin Servlet Container (Open Source) Caucho Technology 4.0.36 2013-04-25 6 Web Profile [6] 3.0 2.2 GPL
Resin Professional Application Server Caucho Technology 4.0.36 2013-04-25 6 Web Profile 3.0 2.2 proprietary
Ruby Ruby 1.2 2015-01-01 No LGPL
Siwpas MechSoft 2.0.0 2011-07-29 yes[7] 3.0 2.2 Proprietary
TomEE ASF 1.7.1 2014-09-12 6 Web Profile 3.0 2.2 Apache License
WebLogic Server Oracle Corporation (formerly BEA Systems) 12.1.3 2014-06-26 6 Full Platform 3.0 2.2 Proprietary
WebObjects Apple Inc. 5.4.3 2008-09-15 partial[8] Proprietary
IBM WebSphere Application Server IBM 8.5.5.3 2014-08-26 6 Full Platform 3.1 2.2 Proprietary
IBM WebSphere Application Server Liberty Core IBM 8.5.5.3 2012-06-15 6 Web Profile 3.1 2.2 Proprietary
WebSphere AS Community Edition IBM 3.0.0.4 2013-06-21 6 Full Platform 3.0 2.2 Proprietary
WildFly Red Hat 8.2.0.Final 2014-11-20 7 Full Platform 3.1 2.3 LGPL

JavaScript

Lua

.NET

Microsoft

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:

Third-party

Objective-C

Python

Perl

PHP

Ruby

Smalltalk

Tcl

See also

References