The following scheme visually presents the component-based architecture of the WSO2 Application Server.

The WSO2 Application Server is a light-weight, high-performant and integrated Web services middleware platform. For it's Web service related functionalities, it uses components from the Apache WS-* stack. Apache Axis2 is the heart of the WSO2 Application Server's SOAP processing engine. Other components like Rampart, Sandesha2, Neethi etc. provide the other WS-* capabilities.
Transports
The WSO2 Application Server supports a number of transports through which the clients can send requests. As listed in the figure above, HTTP/S, JMS, Mail, XMPP and TCP are the main transports that are supported. In addition to that, any transport can be easily plugged in using the APIs provided by Axis2.
See Transports.
Web Services
The WSO2 Application Server supports different types of services. A service's type depends on the way the service is developed. However, finally all services are deployed within the Axis2 engine and all features are available for all service types.
See Web Services and Data Services.
Web Applications
In the standalone mode, the WSO2 Application Server runs on top of an embedded Tomcat instance. This is from where it inherits the Web application deployment capabilities.
See Web Applications.
Tools
The WSO2 Application Server comes with different kinds of tools for running, testing and monitoring services and applications.
See Tools and Statistics.
Carbon Context
The WSO2 Application Server has an in-built registry/repository to store the configuration and configuration metadata. It provides the facility to use a remote repository as well.
The WSO2 Governance Registry is something the WSO2 Application Server inherits from the WSO2 Carbon platform, the component-based platform upon which all WSO2 products are built. WSO2 Governance Registry acts as the metadata repository for the deployed services. In addition to that, users can use it for governance features as well. See Registry.
In addition to that, the Application Server can be deployed on other Application servers (as a Webapp) like WebSphere, WebLogic and Jboss as well. See Deployment.
Management and Configuration GUI
The Application Server's Management console makes comprehensive management, configuration and monitoring possible though a simple, user-friendly GUI. GUI is done on a layered architecture by separating the back-end and front-end concerns. This allows the user to connect to multiple back-ends using a single GUI console.
