HOME

TheInfoList



OR:

An application server is a
server Server may refer to: Computing *Server (computing), a computer program or a device that provides requested information for other programs or devices, called clients. Role * Waiting staff, those who work at a restaurant or a bar attending custome ...
that hosts applications or
software Software consists of computer programs that instruct the Execution (computing), execution of a computer. Software also includes design documents and specifications. The history of software is closely tied to the development of digital comput ...
that delivers a
business application Business software (or a business application) is any software or set of computer programs used by business users to perform various business functions. These business applications are used to increase productivity, measure productivity, and per ...
through a
communication protocol A communication protocol is a system of rules that allows two or more entities of a communications system to transmit information via any variation of a physical quantity. The protocol defines the rules, syntax, semantics (computer science), sem ...
. For a typical
web application A web application (or web app) is application software that is created with web technologies and runs via a web browser. Web applications emerged during the late 1990s and allowed for the server to dynamically build a response to the request, ...
, the application server sits behind the
web servers A web server is computer software and underlying hardware that accepts requests via HTTP (the network protocol created to distribute web content) or its secure variant HTTPS. A user agent, commonly a web browser or web crawler, initiates ...
. An application server framework is a service layer model. It includes
software Software consists of computer programs that instruct the Execution (computing), execution of a computer. Software also includes design documents and specifications. The history of software is closely tied to the development of digital comput ...
components available to a
software developer Software development is the process of designing and Implementation, implementing a software solution to Computer user satisfaction, satisfy a User (computing), user. The process is more encompassing than Computer programming, programming, wri ...
through an
application programming interface An application programming interface (API) is a connection between computers or between computer programs. It is a type of software Interface (computing), interface, offering a service to other pieces of software. A document or standard that des ...
. 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 ne ...
, and load-balancing. The goal is for developers to focus on the
business logic In computer software, business logic or domain logic is the part of the program that encodes the real-world business rules that determine how data can be created, stored, and changed. It is contrasted with the remainder of the software that might ...
.


Java application servers

Jakarta EE Jakarta EE, formerly Java Platform, Enterprise Edition (Java EE) 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 serv ...
(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 Java BluePrints is Sun Microsystems' best practices for Enterprise Java development. This is Sun's official programming model for Java Platform, Enterprise Edition (Java EE) Software Development Kit (SDK). It began with Java Pet Store, the origina ...
, the
business logic In computer software, business logic or domain logic is the part of the program that encodes the real-world business rules that determine how data can be created, stored, and changed. It is contrasted with the remainder of the software that might ...
of an application resides in Enterprise Beans—a modular server component providing many features, including declarative transaction management, and improving application
scalability Scalability is the property of a system to handle a growing amount of work. One definition for software systems specifies that this may be done by adding resources to the system. In an economic context, a scalable business model implies that ...
. *
Web container A web container (also known as a servlet container; and compare "webcontainer" ) 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 pa ...
: the web modules include
Jakarta Servlet A Jakarta Servlet, formerly Java Servlet is a Java software component that extends the capabilities of a server. Although servlets can respond to many types of requests, they most commonly implement web containers for hosting web applicat ...
s and
Jakarta Server Pages Jakarta Server Pages (JSP; formerly JavaServer Pages) is a collection of technologies that helps software developers create dynamically generated web pages based on HTML, XML, SOAP, or other document types. Released in 1999 by Sun Microsystems, J ...
(JSP). * JCA container (
Jakarta Connectors Jakarta Connectors (JCA; formerly known as Java EE Connector Architecture and J2EE Connector Architecture) are a set of Java programming language tools designed for connecting application servers and enterprise information systems (EIS) as a part ...
) * JMS provider (
Jakarta Messaging The Jakarta Messaging API (formerly Java Message Service or JMS API) is a Java application programming interface (API) for message-oriented middleware. It provides generic messaging models, able to handle the producer–consumer problem, that can ...
)


Microsoft

Microsoft's .NET positions their middle-tier applications and services infrastructure in the
Windows Server Windows Server (formerly Windows NT Server) is a brand name for Server (computing), server-oriented releases of the Windows NT operating system (OS) that have been developed by Microsoft since 1993. The first release under this brand name i ...
operating system and the .NET Framework technologies in the role of an application server. The Windows Application Server role includes
Internet Information Services Microsoft IIS (Internet Information Services, IIS, 2S) is an extensible web server created by Microsoft for use with the Windows NT family. IIS supports HTTP, HTTP/2, HTTP/3, HTTPS, FTP, FTPS, SMTP and NNTP. It has been an integral part o ...
(IIS) to provide web server support, the .NET Framework to provide application support,
ASP.NET ASP.NET is a server-side web-application framework designed for web development to produce dynamic web pages. It was developed by Microsoft to allow programmers to build dynamic web sites, applications and services. The name stands for Ac ...
to provide server side scripting, COM+ for application component communication, Message Queuing for multithreaded processing, and the
Windows Communication Foundation The Windows Communication Foundation (WCF), previously known as Indigo, is a free and open-source runtime and a set of APIs in the .NET Framework for building connected, service-oriented applications. .NET Core 1.0, released 2016, did not s ...
(WCF) for application communication.


PHP application servers

PHP application servers run and manage
PHP PHP is a general-purpose scripting language geared towards web development. It was originally created by Danish-Canadian programmer Rasmus Lerdorf in 1993 and released in 1995. The PHP reference implementation is now produced by the PHP Group. ...
applications. *
Zend Server {{Infobox software , title = Zend Server , name = Zend Server , logo = , logo caption = Zend Server , screenshot = , caption = , collapsible = , author = Zend Technologies , developer = Perforce , released = 2009 , discontinued = , ...
, built by
Zend Zend or Zand () is a Zoroastrian term for Middle Persian or Pahlavi versions and commentaries of Avestan texts. These translations were produced in the late Sasanian period. ''Zand'' glosses and commentaries exist in several languages, including ...
, provides application server functionality for the PHP-based applications. *
RoadRunner The roadrunners (genus ''Geococcyx''), also known as chaparral birds or chaparral cocks, are two species of fast-running ground cuckoos with long tails and crests. They are found in the southwestern and south-central United States, Mexico and C ...
, built by Spiral Scout is a high-performance PHP application server, load-balancer, and process manager written in Go.


Third-party

*
Mono Mono may refer to: Biology * Infectious mononucleosis, "the kissing disease" * Monocyte, a type of leukocyte (white blood cell) * Monodactylidae, members of which are referred to as monos Technology and computing * Mono (audio), single-c ...
(a cross platform open-source implementation of .NET supporting nearly all its features, with the exception of Windows OS-specific features), sponsored by
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
and released under the
MIT License The MIT License is a permissive software license originating at the Massachusetts Institute of Technology (MIT) in the late 1980s. As a permissive license, it puts very few restrictions on reuse and therefore has high license compatibility. Unl ...


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 REST (Representational State Transfer) is a software architectural style that was created to describe the design and guide the development of the architecture for the World Wide Web. REST defines a set of constraints for how the architecture of ...
) 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 as "on lin ...
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 pri ...
(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 use ...
practices make it hard to secure mobile devices


Deployment models

An application server can be deployed: * On premises *
Cloud In meteorology, a cloud is an aerosol consisting of a visible mass of miniature liquid droplets, frozen crystals, or other particles, suspended in the atmosphere of a planetary body or similar space. Water or various other chemicals may ...
* Private cloud *
Platform as a service Platform as a service (PaaS) or application platform as a service (aPaaS) or platform-based service is a cloud computing service model where users provision, instantiate, run and manage a modular bundle of a computing platform and applications, w ...
(PaaS)


See also

*
Application service provider An application service provider (ASP) is a business providing application software generally through the. ASPs that specialize in a particular application (such as a medical billing program) may be referred to as providing software as a service. ...
*
List of application servers This list compares the features and functionality of application servers, grouped by the hosting environment that is offered by that particular application server. C * Enduro/X A middleware platform for distributed transaction processing, base ...


References

{{DEFAULTSORT:Application Server Servers (computing) Software architecture