List of application servers

Last updated

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

Contents

C

C++

Go

Java

ProductVendorEditionLast release Jakarta EE
compatibility [1]
Servlet JSP HTTP/2 License
ColdFusion Adobe Systems 2016.0.12016-05-017 partial platform3.12.3No Proprietary, commercial
Enterprise Server Borland 6.72007-011.42.42.0No Proprietary, commercial
Geronimo ASF 3.0.12013-05-286 full platform3.02.2NoFree, Apache
GlassFish Eclipse Foundation 7.0.6 [2] 2023-06-2910 full platform6.03.1YesFree, EPL, GPL + classpath exception
JBoss Enterprise Application Platform Red Hat 8.0 [3] 2024-02-0510 full platform6.03.1YesFree, LGPL
Jetty Eclipse Foundation 12.0.82024-04-0310 full platform [4] 6.03.1YesFree, Apache 2.0, EPL
JEUS TmaxSoft 82013-087 full platform3.02.2No Proprietary, commercial
Lucee (Formerly Railo)Lucee Association Switzerland5.3.2.772019-05-277 partial platform3.12.3NoFree, CDDL, GPL + classpath exception
NetWeaver Application Server SAP AG 7.42013-01-1152.52.1No Proprietary, commercial
Oracle Containers for J2EE Oracle Corporation 10.1.3.5.02009-081.42.42.0No Proprietary, commercial
Orion Application Server IronFlare2.0.72006-03-091.32.31.2No Proprietary, commercial
Payara Payara5.2021.102021-12-158 full platform4.02.3YesFree, CDDL, GPL + classpath exception
Resin Servlet Container (open source) Caucho Technology 4.0.622019-05-236 Web Profile [5] 3.02.2NoFree, GPL
Resin Professional Application Server 6 Web Profile3.02.2No Proprietary, commercial
Tomcat ASF 10.1.102023-06-239 partial platform6.03.1YesFree, Apache v2
TomEE ASF 8.0.152023-05-088 Web Profile4.02.3YesFree, Apache v2
WebLogic Server Oracle Corporation

(formerly BEA Systems)

14.1.1.0.02020-03-30 [6] 8 full platform4.02.3Yes Proprietary, commercial
IBM WebSphere Application Server IBM 24.0.0.52024-05-21 [7] 10 full platform, [8] 6.0 [9] 3.1 [10] Yes [11] Proprietary, commercial
WebSphere AS Community Edition IBM 3.0.0.42013-06-216 full platform3.02.2No Proprietary, commercial
WildFly

(formerly JBoss AS)

Red Hat

(formerly JBoss)

33.0.1.Final [12] 2024-08-2210 full platform6.03.1YesFree, Apache v2

JavaScript

LPC

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

PHP

Python

Ruby

Smalltalk

Tcl

Container Based

Container based application servers run each application in a container. The application can be written in any programming language.

See also

Related Research Articles

Jakarta Enterprise Beans is one of several Java APIs for modular construction of enterprise software. EJB is a server-side software component that encapsulates business logic of an application. An EJB web container provides a runtime environment for web related software components, including computer security, Java servlet lifecycle management, transaction processing, and other web services. The EJB specification is a subset of the Java EE specification.

The Jakarta Transactions, one of the Jakarta EE APIs, enables distributed transactions to be done across multiple X/Open XA resources in a Java environment. JTA was a specification developed under the Java Community Process as JSR 907. JTA provides for:

<span class="mw-page-title-main">Jakarta EE</span> Set of specifications extending Java SE

Jakarta EE, formerly Java Platform, Enterprise Edition and Java 2 Platform, Enterprise Edition (J2EE), is a set of specifications, extending Java SE with specifications for enterprise features such as distributed computing and web services. Jakarta EE applications are run on reference runtimes, which can be microservices or application servers, which handle transactions, security, scalability, concurrency and management of the components they are deploying.

An application server is a server that hosts applications or software that delivers a business application through a communication protocol. For a typical web application, the application server sits behind the web servers.

A web container is the component of a web server that interacts with Jakarta Servlets. A web container is responsible for managing the lifecycle of servlets, mapping a URL to a particular servlet and ensuring that the URL requester has the correct access-rights. A web container handles requests to servlets, Jakarta Server Pages (JSP) files, and other types of files that include server-side code. The Web container creates servlet instances, loads and unloads servlets, creates and manages request and response objects, and performs other servlet-management tasks. A web container implements the web component contract of the Jakarta EE architecture. This architecture specifies a runtime environment for additional web components, including security, concurrency, lifecycle management, transaction, deployment, and other services.

Message-oriented middleware (MOM) is software or hardware infrastructure supporting sending and receiving messages between distributed systems. MOM allows application modules to be distributed over heterogeneous platforms and reduces the complexity of developing applications that span multiple operating systems and network protocols. The middleware creates a distributed communications layer that insulates the application developer from the details of the various operating systems and network interfaces. Application programming interfaces (APIs) that extend across diverse platforms and networks are typically provided by MOM.

Jakarta Connectors are a set of Java programming language tools designed for connecting application servers and enterprise information systems (EIS) as a part of enterprise application integration (EAI). While JDBC is specifically used to establish connections between Java applications and databases, JCA provides a more versatile architecture for connecting to legacy systems.

The Web Server Gateway Interface is a simple calling convention for web servers to forward requests to web applications or frameworks written in the Python programming language. The current version of WSGI, version 1.0.1, is specified in Python Enhancement Proposal (PEP) 3333.

WebSphere Application Server (WAS) is a software product that performs the role of a web application server. More specifically, it is a software framework and middleware that hosts Java-based web applications. It is the flagship product within IBM's WebSphere software suite. It was initially created by Donald F. Ferguson, who later became CTO of Software for Dell. The first version was launched in 1998. This project was an offshoot from IBM HTTP Server team starting with the Domino Go web server.

In computing, a solution stack or software stack is a set of software subsystems or components needed to create a complete platform such that no additional software is needed to support applications. Applications are said to "run on" or "run on top of" the resulting platform.

A web framework (WF) or web application framework (WAF) is a software framework that is designed to support the development of web applications including web services, web resources, and web APIs. Web frameworks provide a standard way to build and deploy web applications on the World Wide Web. Web frameworks aim to automate the overhead associated with common activities performed in web development. For example, many web frameworks provide libraries for database access, templating frameworks, and session management, and they often promote code reuse. Although they often target development of dynamic web sites, they are also applicable to static websites.

Jakarta Persistence, also known as JPA is a Jakarta EE application programming interface specification that describes the management of relational data in enterprise Java applications.

Phusion Passenger is a free web server and application server with support for Ruby, Python and Node.js. It is designed to integrate into the Apache HTTP Server or the nginx web server, but also has a mode for running standalone without an external web server. Phusion Passenger supports Unix-like operating systems, and is available as a gem package, as a tarball, or as native Linux packages.

<span class="mw-page-title-main">Node.js</span> JavaScript runtime environment

Node.js is a cross-platform, open-source JavaScript runtime environment that can run on Windows, Linux, Unix, macOS, and more. Node.js runs on the V8 JavaScript engine, and executes JavaScript code outside a web browser.

<span class="mw-page-title-main">Vert.x</span>

Eclipse Vert.x is a polyglot event-driven application framework that runs on the Java Virtual Machine.

Express.js, or simply Express, is a back end web application framework for building RESTful APIs with Node.js, released as free and open-source software under the MIT License. It is designed for building web applications and APIs. It has been called the de facto standard server framework for Node.js.

Enduro/X is an open-source middleware platform for distributed transaction processing. It is built on proven APIs such as X/Open group's XATMI and XA. The platform is designed for building real-time microservices based applications with a clusterization option. Enduro/X functions as an extended drop-in replacement for Oracle Tuxedo. The platform uses in-memory POSIX Kernel queues which insures high interprocess communication throughput.

This is a list of articles related to the JavaScript programming language.

<span class="mw-page-title-main">Deno (software)</span> Secure JavaScript and TypeScript runtime

Deno is a runtime for JavaScript, TypeScript, and WebAssembly that is based on the V8 JavaScript engine and the Rust programming language. Deno was co-created by Ryan Dahl, who also created Node.js.

References

  1. "Java EE Compatibility". www.oracle.com.
  2. "7.0.6 | projects.eclipse.org". projects.eclipse.org. Retrieved 2023-07-11.
  3. "Red Hat Extends Java Support in the Cloud with JBoss Enterprise Application Platform 8". www.redhat.com. 6 February 2024.
  4. "The Eclipse Jetty Project". eclipse.dev.
  5. "Caucho Resin is Officially Certified Against the Java EE 6 Web Profile". InfoQ.
  6. Lyons, Will (2020-06-27). "WebLogic Server 14.1.1.0.0 is Available". The WebLogic Server Blog.
  7. "What is new in this release of Liberty". www.ibm.com. Retrieved 2024-07-26.
  8. "Jakarta EE 10 programming model support". IBM .
  9. "Jakarta Servlet 6.0". www.ibm.com. Retrieved 2024-07-26.
  10. "Jakarta Server Pages 3.1". www.ibm.com. Retrieved 2024-07-26.
  11. https://www.ibm.com/docs/en/was-liberty/nd?topic=40-http2-support-liberty [ bare URL ]
  12. "WildFly 33.0.1 is released!". Wildfly Official website.