Scale your Business with the
   Cloud Enabled WSO2
     Application Server



          Sagara Gunathunga
          sagara@wso2.com
Agenda
1.    Introduction
2.    Key features
3.    Server architecture
4.    Web services & Web Application support
5.   Development with WSO2 Developer Studio
6.   Caching, clustering and session replication
7.   Jaggery.js support
8.   Demo
Yet another Application Server
Wide range of deployment
           options

             Public/private   Public/private
On-premise
                 IaaS            PaaS
Seamless integration with WSO2
        SOA platform
Multi – Tenant Application Server
WSO2 Application Server
Business friendly Apache 2.0 license & Fully open source.

Enterprise ready Web Services and Web Application container.

Wide range of deployment options - on-premise, private/public IaaS, private/public
  PaaS.

Build top of the WSO2 award winning Carbon middleware platform.

Seamless integration with WSO2 Carbon based products.

Simple web application development lifecycle using WSO2 Developer Studio.

Powered by Apache Tomcat, Apache Axis2 and Apache CXF.
In-build support for Multitenancy.

WSO2 commercial and community support.
Key features of WSO2 Application
                  Server
In build JAX-WS , JAX-RS and native Axis2 web service support.

Easy to use management console.

REST and WSDL 2.0.


Clustering support for High Availability and Scalability , Session replication.


Improved lazy loading and resource sharing architecture.
Improved caching mechanism.


Basic Auth integration to LDAP, Google Auth, OpenID and other external user
  stores.


Ability to install any Carbon feature.
Key features of WSO2 Application
                Server
Deployment synchronization features.


Datasource management for scalable data management.
Hot Deployment/Hot Update of services.


WSDL2Java, Java2WSDL, WSDL Validatorand Try-It tools.


Number of transport options.


Flexible logging support with integration to enterprise logging systems.
JMX MBeans for all key metrics monitoring and management features.


Jagery.js support
Supported standards
          JAX-WS
          JAX-RS
        SOAP 1.1/1.2
    WSDL 1.1, WSDL 2.0
     MTOM, XOP & SwA
       WS-Addressing
        WS-Security
         WS-Trust
   WS-SecureConverstation
     WS-SecurityPolicy
   WS-ReliableMessaging
         WS-Policy
    WS-PolicyAttachment
   WS-MetadataExchange
       WS-Discovery
Supported transports
        HTTP

       HTTPS


        JMS

        SMTP

        TCP
WSO2 Application Server architecture
lazy loading and resource
           management ?
•   Application servers usually run for a long time, keeping
    inactive applications on memory for a long time can effect to
    performance.

•   Application server restarting can cause considerable
    amount of application downtime and effect to availability.

•   Resources such as memory, cache and processor time are
    expensive hence need better resource management.

•   Lazy loading and resource sharing mechanisms should not
    negatively effect on end user experience.
lazy loading and resource
           management

• Tenant lazy loading.

• Web Service lazy loading.

• Web Application lazy loading.
Web Service lazy loading.
Web Application lazy loading.
Clustering and session replication
• The ability to store session specific data in Web
  services is an important feature.
    * Supports 3 levels.
      ServiceContext level.
      ServiceGroupContext level.
      ConfigurationContext level.


• AppServer clustering is based on the Apache
  Tomcat Tribes group management system.
Deployment Synchronization
• Used to synchronize the main repository of a
  Carbon server with set of nodes.

• Usually one READ-WRITE repository with
  number of READ-ONLY repositories.

• Offer two different approaches.
  * SVN based synchronizer
  * Registry based synchronizer
Deployment Synchronization
WSO2 Carbon features with
           Webapps
• Carbon Webapp which is running on Tomcat.

• Other webapps are also deployed in parallel with
  the Carbon Webapp.

• Some API’s are shared across all Webapps to
  make important Carbon features available for
  external Webapps as well.
   * Authentication
   * Registry (Metadata Repository)
   * Carbon Caching
WSO2 Carbon features with
       Webapps
Carbon Authentication for
               Webapps
•   All Carbon functionalities are implemented as Web Services which
    are called Carbon Admin Services.


•   AuthenticationAdmin Service handles all Authentication
    functionalities.


•   AuthenticationAdminClient API is provided to talk to the Admin
    Service.


•   Webapps can use that API to communicate with the Carbon User
    store.


•   Any User store can be plugged into Carbon (Default LDAP)
Registry for Webapps
• WSO2 Registry is used by all WSO2 products as a metadata
  repository


• Webappsalso can use it for the same purpose through the
  CarbonContextAPI
Web service development

•   SOAP 1.1/1.2 and RESTfull Axis2 web services.


• JAX-WS 2.2 web services and JAX-RS services.
WSO2 Developer Studio based
       development
WSO2 Developer Studio
WSO2 Developer Studio is the development
tool for writing applications that get hosted on
one or more of carbon servers.

• This is based on the popular Eclipse IDE with all the
  familiar tools at hand.
• Developer Studio contains diverse set of tools
  vital for configuring your enterprise architecture
Jaggery.JS support




      A completely Javascript way of writing all parts of the
Web applications and services. Closes the gap between Web apps
from Web services by allowing one to create both applications and
                     APIs at the same time.



                      http://jaggeryjs.org/
WSO2 Application server as a service




 https://appserver.stratoslive.wso2.com
More details

http://wso2.com/products/application-server/
Thank you !

WSO2 Intro Webinar - Scale your business with the cloud enabled WSO2 Application Server

  • 1.
    Scale your Businesswith the Cloud Enabled WSO2 Application Server Sagara Gunathunga sagara@wso2.com
  • 2.
    Agenda 1. Introduction 2. Key features 3. Server architecture 4. Web services & Web Application support 5. Development with WSO2 Developer Studio 6. Caching, clustering and session replication 7. Jaggery.js support 8. Demo
  • 3.
  • 4.
    Wide range ofdeployment options Public/private Public/private On-premise IaaS PaaS
  • 5.
    Seamless integration withWSO2 SOA platform
  • 6.
    Multi – TenantApplication Server
  • 7.
    WSO2 Application Server Businessfriendly Apache 2.0 license & Fully open source. Enterprise ready Web Services and Web Application container. Wide range of deployment options - on-premise, private/public IaaS, private/public PaaS. Build top of the WSO2 award winning Carbon middleware platform. Seamless integration with WSO2 Carbon based products. Simple web application development lifecycle using WSO2 Developer Studio. Powered by Apache Tomcat, Apache Axis2 and Apache CXF. In-build support for Multitenancy. WSO2 commercial and community support.
  • 8.
    Key features ofWSO2 Application Server In build JAX-WS , JAX-RS and native Axis2 web service support. Easy to use management console. REST and WSDL 2.0. Clustering support for High Availability and Scalability , Session replication. Improved lazy loading and resource sharing architecture. Improved caching mechanism. Basic Auth integration to LDAP, Google Auth, OpenID and other external user stores. Ability to install any Carbon feature.
  • 9.
    Key features ofWSO2 Application Server Deployment synchronization features. Datasource management for scalable data management. Hot Deployment/Hot Update of services. WSDL2Java, Java2WSDL, WSDL Validatorand Try-It tools. Number of transport options. Flexible logging support with integration to enterprise logging systems. JMX MBeans for all key metrics monitoring and management features. Jagery.js support
  • 10.
    Supported standards JAX-WS JAX-RS SOAP 1.1/1.2 WSDL 1.1, WSDL 2.0 MTOM, XOP & SwA WS-Addressing WS-Security WS-Trust WS-SecureConverstation WS-SecurityPolicy WS-ReliableMessaging WS-Policy WS-PolicyAttachment WS-MetadataExchange WS-Discovery
  • 11.
    Supported transports HTTP HTTPS JMS SMTP TCP
  • 12.
  • 13.
    lazy loading andresource management ? • Application servers usually run for a long time, keeping inactive applications on memory for a long time can effect to performance. • Application server restarting can cause considerable amount of application downtime and effect to availability. • Resources such as memory, cache and processor time are expensive hence need better resource management. • Lazy loading and resource sharing mechanisms should not negatively effect on end user experience.
  • 14.
    lazy loading andresource management • Tenant lazy loading. • Web Service lazy loading. • Web Application lazy loading.
  • 15.
  • 16.
  • 17.
    Clustering and sessionreplication • The ability to store session specific data in Web services is an important feature. * Supports 3 levels. ServiceContext level. ServiceGroupContext level. ConfigurationContext level. • AppServer clustering is based on the Apache Tomcat Tribes group management system.
  • 18.
    Deployment Synchronization • Usedto synchronize the main repository of a Carbon server with set of nodes. • Usually one READ-WRITE repository with number of READ-ONLY repositories. • Offer two different approaches. * SVN based synchronizer * Registry based synchronizer
  • 19.
  • 20.
    WSO2 Carbon featureswith Webapps • Carbon Webapp which is running on Tomcat. • Other webapps are also deployed in parallel with the Carbon Webapp. • Some API’s are shared across all Webapps to make important Carbon features available for external Webapps as well. * Authentication * Registry (Metadata Repository) * Carbon Caching
  • 21.
  • 22.
    Carbon Authentication for Webapps • All Carbon functionalities are implemented as Web Services which are called Carbon Admin Services. • AuthenticationAdmin Service handles all Authentication functionalities. • AuthenticationAdminClient API is provided to talk to the Admin Service. • Webapps can use that API to communicate with the Carbon User store. • Any User store can be plugged into Carbon (Default LDAP)
  • 23.
    Registry for Webapps •WSO2 Registry is used by all WSO2 products as a metadata repository • Webappsalso can use it for the same purpose through the CarbonContextAPI
  • 24.
    Web service development • SOAP 1.1/1.2 and RESTfull Axis2 web services. • JAX-WS 2.2 web services and JAX-RS services.
  • 25.
    WSO2 Developer Studiobased development
  • 26.
    WSO2 Developer Studio WSO2Developer Studio is the development tool for writing applications that get hosted on one or more of carbon servers. • This is based on the popular Eclipse IDE with all the familiar tools at hand. • Developer Studio contains diverse set of tools vital for configuring your enterprise architecture
  • 27.
    Jaggery.JS support A completely Javascript way of writing all parts of the Web applications and services. Closes the gap between Web apps from Web services by allowing one to create both applications and APIs at the same time. http://jaggeryjs.org/
  • 28.
    WSO2 Application serveras a service https://appserver.stratoslive.wso2.com
  • 29.
  • 30.