Application server

From Free net encyclopedia

Revision as of 11:20, 21 April 2006; view current revision
←Older revision | Newer revision→

An application server is a server computer in a computer network dedicated to running certain software applications. The term also refers to the software installed on such a computer to facilitate the serving (running) of other applications.

In the latter part of the 1990s, it was thought that a massive shift over to centrally served applications was likely, and that the desktop PC would be replaced by lightweight network computers. This would have been a return to the much older model of computing as it was done in the 1960s, with a large, very expensive central computer being accessed by multiple users using dumb terminals. The difference now was the widespread use of the graphical user interface (GUI). Certain products, such as Citrix's WinFrame, became quite popular, allowing standard Windows software to be run on an NT server, and accessed from a wide variety of clients, including non-Windows platforms such as Mac and Unix. So far, this shift has not happened on the predicted scale, and serving a GUI-based application over a slow network has presented a number of technical challenges that have not entirely been solved. It remains to be seen if the prediction comes true or whether the late 90s interest turns out to have been a fad.

Following the success of the Java platform, the term application server often refers to a J2EE application server. WebSphere (IBM) and WebLogic (BEA) are the better known commercial J2EE application servers. The JOnAS application server, developed by the ObjectWeb consortium, is the first non-commercial, open source application server to have reached the official certification of compliance with J2EE. The programming language used is Java. The web modules are servlets and JavaServer Pages (JSP), and business logic is built into Enterprise JavaBeans (EJB). The Java 2 Platform, Enterprise Edition (J2EE) provides standards for containing the web components. Tomcat from Apache and JOnAS from ObjectWeb are typical of containers to put these modules into. Both organizations provide the code freely and openly (open source).

Servlets are Java programs that execute in a web container--the Java equivalent of CGI scripts. JSP is 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 within their own. JavaBeans are the independent class components of the Java2 architecture from Sun Microsystems.

The term application server has also been applied to various non-J2EE and non-Java offerings. For example, with the rising popularity of .NET, Microsoft can claim to deliver an application server. Additional open source and commercial application servers are available from other vendors. Some examples are the Base4 Server and Zope. Contrary to prior versions of this entry, Microsoft's Windows Communication Foundation is not an application server, but rather a framework for communication (middleware).

Application server products typically bundle middleware to enable applications to intercommunicate with various qualities of service - reliability, security, non-repudiation, and so on. Application servers also provide an API to programmers, so that they don't have to be concerned with the operating system or the huge array of interfaces required of a modern web-based application. Communication occurs through the web in the form of HTML and XML, as a link to various databases, and, quite often, as a link to systems and devices ranging from huge legacy applications to small information devices, such as an atomic clock or a home appliance.

Portals are a very common application server mechanism by which organizations can manage information. They provide a single point of entry for all users, they can access Web services transparently from any device, and they are highly flexible. Portals can work inside or outside of the organization, and they can attach themselves to any part of it.

This term is widely used as a buzzword in the following fields:

  • Distributed computing - denoting a computer running some part of a distributed computation task
  • Software components - denoting a "component farm"--a computer loaded with software components, ready to answer calls for usage
  • Web services - denoting a machine running applications which will answer interface calls over HTTP in an XML format

See also

Although the term Application server applies to all platforms, it has become synonymous with the Sun Microsystems J2EE platform.

References

Template:Unreferenced

External links

fr:Serveur d'application it:Application server ja:アプリケーションサーバ nl:Applicatieserver pl:Serwer aplikacji pt:Servidor de aplicação ru:Сервер приложений sv:Applikationsserver