Over a million developers have joined DZone.

WSO2 StratosLive ~ An Enterprise Ready Java PaaS - III

· Cloud Zone

Download this eBook outlining the critical components of success for SaaS companies - and the new rules you need to play by.  Brought to you in partnership with NuoDB.

Fig 1. Service Dashboard of ShoppingCartDS
This post is the third in the series of posts, WSO2 StratosLive - An Enterprise Ready Java PaaS. 

Here we will discuss the platform aspect of WSO2 Stratos/StratosLive by going through the simple shopping cart sample that comes with Stratos/StratosLive for the tenants to install readily. Pls refer to WSO2 StratosLive - An Enterprise Ready Java PaaS - I and II, if you haven't read them yet.

In the shopping cart, we have a user portal, admin portal, and the administrative gadgets. Shoppers, operators, and the business administrators will be interacting with the application. Suppliers and the payment gateway are the external services involved. The shopping cart application can also have partner services like amazon.com or ebay. The solution architecture of the shopping cart application provides an overview of how the entire platform can be used  to host an enterprise software as a service.

Carbon Application
Fig 2. Try It for the Data Service
We can install the sample from Tools -> Shopping Cart of the Stratos Manager. Here we can install the entire shopping cart application by just one click, which spans across all the stratos services. Carbon Application, commonly known as cApp enables this seamless integration. WSO2 Carbon Studio, an eclipse based IDE  for WSO2 Carbon, is used to create the cApps efficiently. Here the sample installer component generates the cApp, uploads it to the tenant registry space, and the application deployer deploys the relevant component of the sample application into the relevant Stratos Service.

WSO2 Data as a Service
The WSO2 Data Services Server, a platform for hosting of data services, with service hosting, service testing, and message tracing features is delivered as a multi-tenant, elastically scaling, metered platform. In the sample shopping cart application that we are discussing,  components talking to the traditional or the legacy database will be deployed into WSO2 Data as a Service (Fig 1). Data as a Service exposes the data stored in a database. Database level operations can be done using the interface provided by Data as a Service (Fig 2). Data is distributed to all the services through the shopping cart data service, handling the database transactions.
WSO2 Enterprise Service Bus as a Service
Fig 3. ESB Proxy Services
The WSO2 ESB, one of the highest performance and lowest footprint approaches to implementing a SOA, with the features of proxy services, sequences, endpoints, and much more, delivered as a multi-tenant, elastically scaling, metered platform. In the sample that we are discussing now, WSO2 ESB as a Service facilitates the service collaboration through the proxy services (Fig 3).

WSO2 Application Server as a Service
Fig 4. Application Server Web Applications
Admin Service is used by the Admin Web Portal (Fig 5). It connects to the shopping cart data service and fetches the data as we request from the web application. Here the admins can add new products, categories, users, and more. Java security is used to authenticate when logging into the admin portal. Product Service is associated with the user portal (Fig 6). Similarly purchasing service handles the purchasing. It updates the finance application through the Financial Connector service, which is an Axis2 Service deployed on WSO2 Application Server as a Service. WSO2 Application Server as a Service is the WSO2 Application Server, supporting the development, deployment, and management of Web Services and Web applications, and service hosting along with tools, delivered as a multi-tenant, elastically scaling, metered platform.

WSO2 Governance as a Service
Fig 5. Admin Web App.
WSO2 Governance as a Service is the WSO2 Governance Registry an integrated SOA registry-repository, supporting efficient management of an organization's growing SOA implementation, with Service, WSDL, and Schema features, delivered as a multi-tenant, elastically scaling, metered platform. Meta data such as the xslt files of the purchasing service are stored in the WSO2 Governance as a Service, and the resources are fetched during the purchase.

WSO2 Business Processes as a Service
Fig 6. Portal Web App
The WSO2 Business Process Server, powered by Apache ODE providing a complete graphical console to deploy, manage and view processes and process instances, with the features for WS-BPEL 2.0 & BPELWS 1.1, Instance Data Cleanup, and Process Monitoring, delivered as a multi-tenant, elastically scaling, metered platform. In the shopping cart sample that we have been discussing, a ReOrderProcess in Business Processes as a Service checks the stock periodically and reorders if needed.

WSO2 Mashups as a Service
In the sample that is considered in this post, services such as the javascript service fetching related products from ebay and Amazon are deployed into WSO2 Mashups as a Service, which is the WSO2 Mashup Server, supporting the composition of Web Services, feeds, scraped Web pages, files and other information sources into new Web Services, web pages, or user notificatons,  features for scheduled tasks, delivered as a multi-tenant, elastically scaling, metered platform.

This sample is just a teaser of StratosLive, the comprehensive platform as a service, demonstrating the platform aspect of Stratos. You can explore StratosLive more on your own as platform as a service for the needs of your enterprise.

Learn how moving from a traditional, on-premises delivery model to a cloud-based, software-as-a-service (SaaS) strategy is a high-stakes, bet-the-company game for independent software vendors. Brought to you in partnership with NuoDB.


Published at DZone with permission of Pradeeban Kathiravelu, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}