Top Banner
Isuru Udana So#ware Engineer WSO2 Inc. Enterprise Integra0on with the WSO2 ESB An Introduc0on to the Fundamentals Pamod Sylvester So#ware Engineer WSO2 Inc.
43

Enterprise Integration with the WSO2 ESB

Nov 18, 2014

Download

Technology

WSO2

 
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Enterprise Integration with the WSO2 ESB

Isuru  Udana  So#ware  Engineer  WSO2  Inc.    

Enterprise  Integra0on  with  the  WSO2  ESB      

 An  Introduc0on  to  the  Fundamentals  

   

Pamod  Sylvester  So#ware  Engineer  WSO2  Inc.    

Page 2: Enterprise Integration with the WSO2 ESB

About WSO2

•  Providing the only complete open source componentized cloud platform

–  Dedicated to removing all the stumbling blocks to enterprise agility –  Enabling you to focus on business logic and business value

•  Recognized by leading analyst firms as visionaries and leaders –  Gartner cites WSO2 as visionaries in all 3 categories of application

infrastructure –  Forrester places WSO2 in top 2 for API Management

•  Global corporation with offices in USA, UK & Sri Lanka

–  200+ employees and growing

•  Business model of selling comprehensive support & maintenance for our products

Page 3: Enterprise Integration with the WSO2 ESB

150+ globally positioned support customers

Page 4: Enterprise Integration with the WSO2 ESB

•  SOA and the role of ESBs. •  WSO2 ESB features and applicability. •  Benefits of using an ESB. •  High level architecture of the WSO2 ESB. •  Enterprise Integration Patterns (EIP) . •  Implimentation of EIPs using the WSO2 ESB.

Agenda

Page 5: Enterprise Integration with the WSO2 ESB

•  Service  Oriented  Architecture  (SOA)  –  A  design  paradigm  and  discipline  -­‐  used  by  IT  to  improve  its  ability  to  quickly  and  efficiently  meet  business  demands.  

–  A  style  of  so#ware  architecture  that  is  modular,  distributed  and  loosely  coupled.  

–  ComponenIzaIon  –  The  main  driver  of  SOA  –  Business  FuncIonaliIes  are  implemented  in  different  Business  Components  

–  Business  Components  provide  their  funcIonality  to  its  consumers  as  a  ‘Service’  with  the  well-­‐defined  service  interfaces.  

 

Service  Oriented  Architecture  (SOA)  

Page 6: Enterprise Integration with the WSO2 ESB

Role  of  ESB  

•  Why  ESB?    – Modern  Enterprises  •  Comprised  of  so  many  Systems  and  Services    •  built  based  on  open  standards,  custom-­‐built,  acquired  from  a  third  party,  part  of  a  legacy  system  or  any  such  combinaIon  

–  Integra0on    •  OrganizaIons  move  away  from  monolithic  systems    •  MulIple  Systems  connected  via  SOA  as  the  blue  print  

 

Source : http://bonfirehealth.com/week-13-insights-spark-integration/

Page 7: Enterprise Integration with the WSO2 ESB

Role  of  ESB  

•  Why  ESB?    –  SpagheF  Integra0on  Dilemma  

•  How  about  ?  –  maintainability,  scalability,  troubleshooIng  and  governance  etc.  

             

 

Page 8: Enterprise Integration with the WSO2 ESB

Role  of  ESB  

•  Why  ESB?    –  ESB  –  The  standard  infrastructure  to  implement  the  SOA                

 

Page 9: Enterprise Integration with the WSO2 ESB

Role  of  ESB  

•  Enterprise  Service  Bus  (ESB)  –  An  ESB  is  a  middleware  soluIon  that  enables  interoperability  among  heterogeneous  environments  using  a  service-­‐oriented  model.  

–  Stateless  and  Seamless  IntegraIon  –  Standard  Protocols  –  SOAP,  REST,  JSON  etc.  –  Transports  –  HTTP/S,  JMS,  TCP,  VFS  etc.  

 

Source : http://graegert.com/programming/no-soa-criticism-somewhere

Page 10: Enterprise Integration with the WSO2 ESB

WSO2  ESB  is…  

•  A  lightweight,  high  performance  ESB  •  Feature  rich  and  standards  compliant  –  SOAP  and  WS-­‐*  standards  –  REST  support  –  Domain  specific  protocol  support  (eg:  FIX,  HL7)  

•  User  friendly  and  highly  extensible  •  100%  free  and  open  source  with  commercial  support  

Page 11: Enterprise Integration with the WSO2 ESB

Under  the  Hood:  Apache  Synapse  

•  A  lightweight,  open  source  ESB  implementaIon  from  the  

ASF  :  hfp://synapse.apache.org  

•  Makes  up  the  mediaIon  engine  of  WSO2  ESB  

•  MulIthreaded  and  asynchronous  message  processing  core  

•  Based  on  a  number  of  well  known  open  source  projects  (eg:  

Axis2,  Hfp  Core)  

Page 12: Enterprise Integration with the WSO2 ESB

Under  the  Hood:  WSO2  Carbon  

•  An  OSGi  based  components  framework  for  SOA  

•  Extensive  modularity  and  reusability  

•  Easily  add,  remove  and  customize  features  

– Similar  to  Eclipse  plug-­‐ins  

•  Easily  deploy  third  party  libraries  and  custom  code  

into  the  server  runIme  

•  Web  based  management  console  

Page 13: Enterprise Integration with the WSO2 ESB

ESB  Func0onal  Components  ● Mediators

● Sequences

● Endpoints

● Proxy Services

● Tasks

● REST API

● Message Stores

and Processors

● Local Entries

● Registry

● Templates

Page 14: Enterprise Integration with the WSO2 ESB

More  on  Func0onal  Components  

•  Each  funcIonal  component  serves  a  specific  purpose  •  FuncIonal  components  can  be  mixed  and  matched  to  implement  various  integraIon  scenarios  and  paferns  

•  Configuring  WSO2  ESB  for  a  given  scenario  requires:  –  IdenIfying  the  right  set  of  components  – Puing  them  together  in  the  opImal  manner  

Page 15: Enterprise Integration with the WSO2 ESB

Mediators  

Page 16: Enterprise Integration with the WSO2 ESB

Sequences  

•  A  chain  of  mediators  •  Messages are sent through all the

mediators in the sequence, in the order they appear

Page 17: Enterprise Integration with the WSO2 ESB

Endpoints  

•  A  logical  enIty  to  which  messages  can  be  sent  from  the  ESB  –  A  service  endpoint  reference  (EPR)  –  A  JMS  queue  –  A  FIX  session  

•  Various  operaIonal  and  QoS  constraints  can  be  engaged  on  an  endpoint  –  SOAP  version  – WS-­‐Security  

Page 18: Enterprise Integration with the WSO2 ESB

Proxy  Services  

Page 19: Enterprise Integration with the WSO2 ESB

REST API

•  Exposing  RESTful  APIs    •  An  easy  way  to  expose  exisIng  SOAP  services  over  REST  

•  REST  à  SOAP  conversion    

Page 20: Enterprise Integration with the WSO2 ESB

Message Store and Processors

•  Message Store §  Storage for ESB messages §  In-memory, JMS

•  Message Processors §  Consume the messages in message stores and

do the processing of them

Page 21: Enterprise Integration with the WSO2 ESB

Why  Store  and  Forward?  

•  Matching  Request  Rates  

 

 

 

 

•  Guaranteed  Delivery    

Page 22: Enterprise Integration with the WSO2 ESB

Templates  

•  With  complex  business  requirements,  ESB  config  can  grow  bigger..  

•   Need  a  way  to  reuse  the  configuraIon  •  WSO2  ESB  4.0  introduces  –  Templates  

 

 

Page 23: Enterprise Integration with the WSO2 ESB

Configuring  the  ESB  

•  The  task  of  laying  out  and  connecIng  the  ESB  funcIonal  components  

•  Done  using  Synapse  configuraIon  language  (XML  based)  

•  WSO2  ESB  makes  the  job  easier  by  providing  a  set  of  UI  wizards  and  graphical  tools  

•  Equivalent  to  programming  in  many  ways  

Page 24: Enterprise Integration with the WSO2 ESB

An  Example  Configura0on  

Page 25: Enterprise Integration with the WSO2 ESB

Developer  Studio  

Page 26: Enterprise Integration with the WSO2 ESB

Modes  of  Opera0on  

•  WSO2  ESB  supports  4  modes  of  operaIon  –  Message  mediaIon  (ESB  as  a  message  router)  

–  Service  mediaIon  (Expose  service  endpoints  on  ESB)  

–  Task  scheduling  (Run  periodic  tasks  on  ESB)  

–  EvenIng  (ESB  as  an  event  broker)  •  Most  real  world  scenarios  require  the  ESB  to  operate  in  mulIple  modes  at  the  same  Ime  

Page 27: Enterprise Integration with the WSO2 ESB

Key  Features:  Rou0ng  

Page 28: Enterprise Integration with the WSO2 ESB

Key  Features:  Filtering  

Page 29: Enterprise Integration with the WSO2 ESB

Key  Features:  Transforma0on  

Page 30: Enterprise Integration with the WSO2 ESB

Key  Features:  Protocol  Switching  

Page 31: Enterprise Integration with the WSO2 ESB

Key  Features:  Load  Balancing  

Page 32: Enterprise Integration with the WSO2 ESB

Key  Features:  QoS  

Page 33: Enterprise Integration with the WSO2 ESB

Supported  Protocols/Standards  

•  Transports  –  HTTP/S,  POP/IMAP,  SMTP,  JMS,  AMQP,  FIX,  Raw  TCP,  Raw  UDP,  

SAP,  File  transports  (FTP/SFTP/CIFS)  

•  Content  Interchange  Formats  

–  SOAP  1.1,  SOAP  1.2,  POX,  HTML,  Plain  text,  binary,  JSON,  Hessian  

•  WS-­‐*  Standards  – WS-­‐Addressing,  WS-­‐Security,  WS-­‐Reliable  Messaging,  WS-­‐Policy,  

WS-­‐Discovery,  MTOM/SwA  

Page 34: Enterprise Integration with the WSO2 ESB

WSO2  ESB  Also  Supports…  

Page 35: Enterprise Integration with the WSO2 ESB

WSO2  ESB  In  Ac0on  

Page 36: Enterprise Integration with the WSO2 ESB

High  Level  Architecture  

Page 37: Enterprise Integration with the WSO2 ESB

Enterprise  Integra0on  PaXerns  (EIP)    •  Enterprise functionalities are decomposed and

exposed as services.

•  Maintaining solid integration among services is

apparent.

•  There are different modes of integration

•  EIPs provide standardized architectural solutions for

integration needs

•  Refer : http://www.eaipatterns.com/ for pattern

definitions

Page 38: Enterprise Integration with the WSO2 ESB

WSO2  ESB  EIP  Support      

• 

Visit : http://docs.wso2.org/wiki/display/IntegrationPatterns/

Enterprise+Integration+Patterns+with+WSO2+ESB

Page 39: Enterprise Integration with the WSO2 ESB

Content  Based  Rou0ng  (CBR)          

Bar Service

Foo Service Foo

Request

Bar Request

CBR Proxy

Page 40: Enterprise Integration with the WSO2 ESB

Guaranteed  Delivery          

Stock Holder Request

WSO2 ESB

Stock Holder Inventory

Status :Off-line

Message Store

Stock Holder Inventory

Status :On line Message Processor

Page 41: Enterprise Integration with the WSO2 ESB

Ques0ons  

Page 42: Enterprise Integration with the WSO2 ESB

Engage with WSO2

•  Helping you get the most out of your deployments •  From project evaluation and inception to development

and going into production, WSO2 is your partner in ensuring 100% project success

Page 43: Enterprise Integration with the WSO2 ESB

Thank  You