wso2 tutorial

Post on 21-Nov-2014

2.486 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

WSO2 ENTERPRISE SERVICE BUS A FAST TUTORIAL

ABOUT ME

Armando Ramírez Vila Technical Engineer in Computer Sciences (University Of

Oviedo).

Software Engineer at Equifax Ibérica.

Software Engineer at ICM (As consultant by Axpe Consulting) previously.

Software Engineer at C1Nn previously.

Contact

armando.ramirez.vila@gmail.com

http://es.linkedin.com/in/armandorv

https://twitter.com/armandorvila

PRESENTATION LAYOUT

Introduction

WSO2 ESB at a first glance

WSO2 ESB architecture

WSO2 ESB installation

WSO2 ESB in action

Corollary

Time to ask ?

INTRODUCTIONWHAT IS THIS PRESENTATION ABOUT?

A lightweight tutorial about WSO2 ESB.

A conccept prove of the WSO2 ESB.

A new skill for my tool kit.

A task of my course called «Master in Web Engineering».

INTRODUCTIONWHAT IS AN ENTERPRISE SERVICE BUS ?

Wikipedia «A software architecture model used for designing and implementing the interaction and communication

betwen mutually interactiong software applications in service-oriented architecture (SOA) »

Oracle «Enterprise Service Bus (ESB) is a way to create a service-oriented architecture».

“An Enterprise Service Bus (ESB) is a distributed middleware system for integrating enterprise IT assets using a service-oriented approach“

“An Enterprise Service Bus (ESB) is a distributed infrastructure used for enterprise integration. It consists of a set of service containers, which integrate various types of IT assets”

Open Source ESB in Action (Tijs Rademakers) “From an integration vendor perspective is a product offering that provides integration functionality, a

developer toolset, and a management environment”

“From the SOA perspective, an ESB can be used as an integration platform that enables existing IT assets and applications to be exposed as services”

INTRODUCTIONADVANTAGES OF AN ENTERPRISE SERVICE BUS (FROM THE SOA PERSPECTIVE)

Centralized acces point for all clients We are relatively independent of the service.

All our endpoints has similar URIs.

Centralized configuration We can set global security for all services.

We can set global logging for all request, or some of them.

Centralized administration We have got a unique middelware in which deploy our services.

We have got a unique middelware from which undeploy our services .

We have got a a point to set monitorization

INTRODUCTIONENTERPRISE SERVICE BUS IMPLEMENTATIONS

JBoss ESB Open source

So complex, it gives lots of support for the integration approach which we were talking before.

Project roadmap problems: Now JBoss community is beeting for SwitchYard, a more sophisticated framework which supports integration with another projects like jBPM, Drools, Apache Camel and more….

MULE ESB It is not open source.

It has lots of success, but It follows the integration approach as weel the SOA approaches.

Oracle ESB OSB in short, It is so expensive to start.

It is not so easy as weel.

WSO2 ESB It is Open Source.

It follows the SOA approach.

IT is easy of manage.

WSO2 ESB AT A FIRST GLANCEA FIRST GLANCE

At a first glance WSO2 ESB is: A middelware which enable architects to implement distributed SOA architectures, based on apply

proxies to enterprises services in order to carry out monitoring and an easier management of all services that are living in the organization.

WSO ESB Features are: Full XML and Web Services Support

Proven Interoperability and highly performant

Extensibility and Minimal Custom Development

Multi-protocol and Industry Driven Protocols

Task Scheduling and Event Driven Architecture (EDA)

Built-in Registry

Advanced Mediations & EIP

Server Management and System Monitoring

WSO2 ESB ARCHITECTUREARCHITECTURE OVERVIEW

Components Transports

WSO2 ESB supports all the widely used transports including HTTP/s, JMS or SMPT.

Endpoints

Endpoints stay as a logical component with the transports. Two sets of endpoints Address and WSDL.

Proxy Services:

The virtual services in the WSO2, a proxy service can access using a URL similar to a normal web service address.

Topics

Messages handling including subscriptions and events.

Components Mediators

Using the mediator library one can implement widely used MEPs and EIPs.

Secuences

The sequences act as the configuration component for the mediators. Sequences allow to organize the mediators to implement pipes and filters pattern.

Tasks and Commands

Tasks provide facility to configure scheduled jobs in the WSO2 ESB.

QoS

Reliable messaging and security for proxies (Rampart).

Configuration, Registry:

WSO2 ESB has an inbuilt Registry/repository to store the configuration and configuration metadata and it provides the facility to use a remote repository as well.

Management and Configuration GUI

GUI components make the comprehensive management, configuration and monitoring GUI.

How It works

1. An application sends a message to the ESB.

2. The message is picked up by the ESB transport.

3. Transport sends the message through a message pipe.

4. Quality of service aspects like Security and Reliable Messaging of the message is taken care in this pipe. Internally this pipe is the in-flow and out-flow of Axis2.

5. ESB can operate in two modes:

1. Message Mediation: A single pipe is used.

2. Proxy Services: Separate pipes connecting transport to different Proxy Services are used.

6. Both message transformation and routing can be seen as a single unit (WSO2 ESB call this the mediation

framework). Some transformations happens before routing decision has taken. Some transformations happens after the the routing decision has taken. This part is the Synapse implementation.

7.  After this message is injected to the separate pipes depending on the destinations. Here again quality of service aspects of the messages is determined.

8. The transport layer takes care of the transport protocol transformations required by the ESB.

WSO2 ESB INSTALLATIONDOWNLOAD IT

Download We can use google to find it (be careful, WSO2 has another products, type WSO2 ESB)

When we download the WSO2 ESB you have a zip file with the following content.

Installation test We can test our installation in the next URL: https://156,35,95.66:9443/carbon

You must have admin users (juan.ramon/juan.ramon, lourdes.tajes/lourdes.tajes)

Installation test Running !!

WSO2 ESB IN ACTIONSERRVICES DEPLOYMENT AND A LITTLE MORE

Management Console The management console has got 4 sections

Main: Here we can do the main tasks like create a proxy, deal with mediators and secuences and so on ..

Monitor: Here we can do monitoring of our services and read logs and statics.

Configure: Configuration of our installation, users, roles key stores , and so on.

Tools: Utitlities like WSDL validator, Java to WSDL or WSDL to Java.

Deployed services There is already 3 web services

deployed

We can interact with these services before deploy any own service.

Testing the echo web service We can test deployed services in the same way that we do it using SoapUI.

Deploying a own service We can deploy an Axis services, only the code and the servies.xml file.

We can create a proxy to another web service deployed wherever.

Deploying a own service We have to give a name and a end point and it’s all.

Then we can use this service instead of our original web service.

Monitoring our services Centralized logs management

Monitoring our services Transport statics

WSO2 ESB Tools WSDL2java

Java2WSDL

Try it

WSDL Validator

WSO2 ESB Tools WSDL2java

Java2WSDL

Try it

WSDL Validator

WSO2 ESB Tools WSDL2java

Java2WSDL

Try it

WSDL Validator

COROLLARYWHAT AT THE END ?

Use an ESB is a good choice for SOA architectures which are based on web services.

There are several implementations which take several approaches and we have to get the better for us.

Use an ESB is not necessary as hard as it seem and It can be an interesting bet in a middle range.

My toolkit is now richer than earlier

?TIME TO ASK

top related