The The following topics describe the application server's evolution, its place in SOA with an introduction to the WSO2 Application Server.
Table of Contents maxLevel 3 minLevel 3
An Application Server (AS) is a software program which accommodates the hosting, deployment and management of various applications. It is released under Apache Software License Version 2.0, one of the most business-friendly licenses available today. Residing in the middle tier , between an organization’s database layer and the user-interaction layer, an application server facilitates communication and connection of between the front and back tiers.
For example, if a user triggers a particular control in a user interface, like clicking the submit button Submit, it typically invokes a service deployed in the application server. The deployed service or application defines what the course of actions needs that need to be taken when the button is clicked. Few possibilities are data retrieval from the database and manipulation before presenting to the end-user or invoking other services as defined in the application’s business logic. These operations are typically handled by an application server.
In a typical client-server environment, application developers had to write most of the program code for operations such as database interactions, client request management, session management and security, in addition to the actual business logic. Since every developer had to write similar code for common functionalities, packaging and hosting them in a centrally-accessible server increased reusability and reduced the overhead. This triggered the emergence of the 3-tier (or N-tier) architecture, with reusable functionalities instilled in application servers in middle tier/s. This enables developers to focus simply on an application’s business logic implementation.
The WSO2 Application Server
The WSO2 Application Server is a lean, open source, high-performant application server with Web application and Web services deployment and management capabilities.
It is fully - open source and developed based on the lean, component-based WSO2 Carbon platform. It utilizes Apache Tomcat and is capable of hosting any kind of Web application deployable in Tomcat. Users can simply and effectively create, consume and manage their applications and services in a unified manner through the Application Server's "Management Console" user-interface.
Unlike many over-bloated, proprietary solutions, WSO2 has created a new platform that cuts out unnecessary layers, supporting the full WS-* stack in a simple, clean, lightweight model. It is reliable, scalable and supports secure communication and transactional integration based on the concept of loose coupling. Web applications inherit features such as authentication/authorization , and user management from the WSO2 Carbon platform.
The WSO2 Application Server brings together a number of open source projects into a single, seamless, easy-to-use offering. Instead of having you to download different parts of the Apache Web services stack separately and assemble them together, WSO2 has already done that for you. With the WSO2 AS, you get a single, integrated package with lots of additional features, which are inherited from the powerful WSO2 Carbon platform. The WSO2 Application Server utilizes Apache WS* stack and REST protocol features, provides enterprise-class security features, JAX-WS support, governance, monitoring, clustering, high-availability, load balancing, tracing, logging and more.
The WSO2 Application Server has extensive Web service management capabilities, which makes it ideal for SOA implementations. It utilizes Apache WS-* stack for Web services related functionalities along with Axis2 components such as Rampart, Sandesha2, Neethi etc. It also offers the unique capability to run Web applications and Web services on the same server and manage them simply through a unified graphical console.
The WSO2 Application Server supports deployment of different types of services such as Data Services, spring, jar, axis2 and JAX-WS. Service type depends on the way the service is developed. However, finally all services are deployed within the Axis2 engine and all features will be available for all service types.