76
WSO2 Integra-on Pla1orm Deep Dive Malaka Silva Senior Technical Lead WSO2 Isuru Udana Associate Technical Lead WSO2

WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Embed Size (px)

Citation preview

Page 1: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2Integra-onPla1orm

DeepDive

MalakaSilvaSeniorTechnicalLeadWSO2

IsuruUdanaAssociateTechnicalLeadWSO2

Page 2: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Agenda•  Introduc-ontoWSO2Integra-onPla1orm•  FundamentalsofWSO2ESB•  Demonstra-on•  Q&A

Page 3: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Evolu-onofIntegra-on

PointtoPointIntegra-on

●  Customcode,dataformatsformajorityofintegra-on(dataextrac-on,businessruleprocessing,dataloading)

●  Costlyover-me(maintenance,

complexity)●  TightCoupling

●  Scalabilityisanissue

●  Lessreusability

Page 4: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Evolu-onofIntegra-on•  RiseofSOAandESB

– Avoidpointtopointintegra-onwithanESB

Page 5: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

ConnectedBusiness

•  Aninternallyandexternallyconnectedbusiness.

Customers

Poten-alCustomers/Partners

Employees

Partners

InternalSystems

ExternalSystems

ImagecourtesyhUp://jdamico.net/wp---content/uploads/2010/04/collaborate---with---B2B---channel---partners.jpg

Page 6: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

ConnectedBusinessandIntegra-on•  Integra-onisakeyfactorforhavingfric-onless

interac-ons,insideandoutsidetheorganiza-on.

Page 7: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2Integra-onPla<orm

Page 8: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Integra-onandAPIs-TheCloseCousins

Page 9: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2Integra-on+APIManagementPla<orm

Page 10: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2ESB

•  Alightweight,highperformanceESB

•  Featurerichandstandardscompliant

–  SOAPandWS-*standards

–  RESTsupport

•  Domainspecificprotocolsupport(eg:FIX,HL7)

•  Userfriendlyandhighlyextensible

•  100%freeandopensourcewithcommercialsupport

Page 11: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

KeyFeatures-Rou-ng

Page 12: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

KeyFeatures-Filtering

Page 13: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

KeyFeatures-Transforma-on

Page 14: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

KeyFeatures–ProtocolSwitching

Page 15: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

KeyFeatures–LoadBalancing

Page 16: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

KeyFeatures–QualityofService

Page 17: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

KeyFeatures-ServiceOrchestra-on•  Orchestra-ng/Combiningmul-pleServices

Page 18: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

FundamentalsofWSO2ESB

•  UnderstandingESBmessageflow

Page 19: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

FundamentalsofWSO2ESB

Page 20: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

MessageProcessingUnits-  Sequences,mediatorsMessageEntryPoints-  ProxyServices,APIs,Inbound

endpoints.MessageExitPoints-  Endpoints

FundamentalsofWSO2ESB

Page 21: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

MessageProcessingUnits

Mediators

Page 22: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Mediators

•  Transforma-onMediators•  Filters,Switches,Iterate,Aggregate,Clone•  PropertyMediator•  ScriptMediators•  CustomMediators

Page 23: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

SomeMediatorsName Descrip-on

LogMediator Logsfullorpartofthemessage,atvariousseveritylevels(Trace,Debug,etc)

SequenceMediator Invokesexis-ngsequence-Sequencenamecanbesta-cordynamic

SendMediator Sendsamessageout,usingsta-cinforma-onorendpointdefini-on.

CalloutMediator Performsablockingexternalserviceinvoca-on.

SwitchMediator Evaluatesmessagescontentsagainstregularexpressionandinvokesthecorrespondingmediator(switch-case-default)

ValidateMediator ValidatesmessageorpartsofmessageagainstXMLschema(schemacanbelocalorinregistry)

DropMediator Stopsprocessingofcurrentmessage

FaultMediator TransformscurrentmessageintocustomFaultmessage

Page 24: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Sequences

Page 25: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

ProgrammingModel

Client Service

InSequence

OutSequence

FaultSeq.

12 3

6 5 4

!

Page 26: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

MessageProcessingUnits-  Sequences,mediatorsMessageEntryPoints-  ProxyServices,APIs,Inbound

endpoints.MessageExitPoints-  Endpoints

FundamentalsofWSO2ESB

Page 27: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

MessageEntryPoints

Messages can be injected into sequences through the following interfaces:

27

Serviceo  Proxy Services o  APIs o  Inbound Endpoints o  Tasks

Page 28: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

ProxyServiceso  Actslikeavirtualservice.o  Receivesmessagesandmediatesthembeforesendingthemtotheendpoint

(usuallyanactualservice)

28

Client Service

InSequence

OutSequence

FaultSeq.

12 3

6 5 4

!

Page 29: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Service

APIs(hUpservices)

o  APIscanacceptRESTmessageswhichallowclientstoprovideaddi-onalinforma-ononhowtomanagethemessage

o  UnmanagedAPI(API-ManagerformanagedAPIs)

29

API

Page 30: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

InboundEndpoints

•  Crea-nginboundmessagingchannelsdynamically.

–  ListeningInbound–HTTP,HL7,TCP–  PollingInbound–JMS,File/VFS

•  InjectstheinboundmessagesintoanESBmessageflow.

Page 31: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Coordina-on-In-orderdeliverywithsingleconsumer

InboundEndpoints

Page 32: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Coordina-on-Mul-pleConsumers

InboundEndpoints

Page 33: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Service

TasksAllowconfigura-onofscheduledjobstoexecuteinternal/externalcommandso Injectamessageintoaproxyservice,Mainsequenceoranamedsequenceo Example:

o ESBallowsscheduledtaskstogofetchdata

33

Page 34: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

TaskCoordina-on

Tasks

Page 35: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

MessageProcessingUnits-  Sequences,mediatorsMessageEntryPoints-  ProxyServices,APIs,Inbound

endpointsMessageExitPoints-  Endpoints

FundamentalsofWSO2ESB

Page 36: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Endpoints

•  Logicalrepresenta-onofoneormorerealbackendservice,jmsqueueetc.

•  Address,HTTPEndpoints–Alogicalendpointforanexis-ngBEservice

•  Loadbalancing/Failover–Groupofendpointsforexis-ngBEservices

Page 37: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Connectors

•  AconnectorisareadymadeandconvenienttooltoreachpubliclyavailablewebAPI’s.

•  ‘CloudtoCloud’and‘CloudtoEnterprise’Integra-on

•  ESBConnectorStore:hUps://store.wso2.com/

Page 38: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

•  Every connector is self-contained and independent from ESB code

•  Dynamically plug in to ESB •  Dynamic Tooling support with WSO2 Developer

Studio •  You can write, ‘your own connector’ and just

plug it in

Connectors

Page 39: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

MessageStoreandMessageProcessor•  Asynchronous/One-wayMessaging,JMS

•  Storeandforward•  GuaranteedDeliveryandRatematching

•  JMSMessagebrokerasthepersistencestore–WSO2MB,ApacheAc-veMQetc.

Page 40: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

EnterpriseIntegra-onPaUerns

hUps://docs.wso2.com/display/Integra-onPaUerns/Enterprise+Integra-on+PaUerns+with+WSO2+ESB

Page 41: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

ToolingSupportforWSO2ESB

Page 42: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2Integra-onPla<orm

Page 43: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2DataServicesServerPainpoints:●  Differentdatastores●  Cumbersomedataaccess/transforma-onlogic

●  BusinesslogicvsDataaccesslogic

●  Repe--veCode

DSS:● Welldefinedinterfaces(standardbased)●  Encapsulateddatalogic●  Configura-ondriven●  LooseCouplingbetweenApp&Datastores

●  Scaleasaseparatearchitecturallayer.

Page 44: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2DataServicesServer:Features

•  Mul-pleDataSources

•  NestedQueries•  No-fica-ons•  BatchProcessing•  DistributedTransac-ons

Page 45: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

UseCase–PhoneRetail•  Aphoneretailbusinesswantstoexposeitsphonesearchand

buyingfunc-onali-estoitsmobileapplica-onusers.•  Mobilephoneusersearchesforalltheavailablephonesina

storewithaspecificbrand.•  Oncetheuserselectthephonewithmatchingfeatures,he/she

purchasesbyprovidingrequiredinforma-on•  Thecustomerswhopurchasephoneswillbeaddedto

Salesforce•  WSO2DASmonitorsandanalyzesthestatsonusersand

phonebrands

Page 46: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Solu-onArchitecture

Page 47: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Searchingforaphone

Page 48: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Purchasingaphone

Page 49: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

PhoneSearch

•  ConversionfromJSONtoXML•  Messagetransforma-on•  Extrac-ngvaluesfromincomingmessage•  Invokingendpoint•  SendingresponsewithXMLtoJSONconversion

Page 50: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

PhoneSearch

Page 51: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

PhoneSearch

Page 52: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

PhonePurchase

•  Extractinforma-on•  Updatestore•  UpdateSalesforceviaSalesforceconnector•  Statpublishing

Page 53: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

PhonePurchase

•  Extractinforma-on

Page 54: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

PhonePurchase

•  UpdateStore

Page 55: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

PhonePurchase

•  SalesforceConnector

Page 56: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

PhonePurchase

•  PublishingSta-s-cs

Page 57: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

DASGadgets

Page 58: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2Integra-onPla<orm

Page 59: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2BusinessProcessServer

•  BPMN2.0• WS-BPEL2.0• WS-HumanTask1.1•  BPEL4People

Page 60: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

HumanTaskSupport

Page 61: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2Integra-onPla<orm

Page 62: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2MessageBroker

Uniquedistributable,faulttolerantandscalableenterprisemessagebrokertoconnect,persistandreliablydistributedata,eventinforma-ongeneratedfrommul-plesystems,applica-onsandIoTdevices.

Page 63: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2MB-Advantages

•  Integrateeasilywithexis-ngITInfrastructure.•  Selectstoragebasedonmessagingdemands.•  Lowmaintenancethroughminimumdeployment

effort.•  HighlyinteroperablewithAMQPclients.•  Effortlesslyhandlelargemessagetransfer.•  Seamlessfeatureintegra-onwithWSO2ESB.

Page 64: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

SupportedProtocols&Specifica-ons•  JMS(JavaMessageService)•  AStandardJavaAPIforprogrammerstohandle

messagingbyinterac-ngwithamessagebroker•  AMQP(AdvancedMessageQueuingProtocol)•  OpenStandardforpassingbusinessmessages

betweenapplica-onsororganiza-ons•  MQTT(MessageQueuingTelemetryTransport)

Page 65: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2MB-Features

•  PointtoPoint(Queues)-Amessageisdeliveredonlyoncetoasingleconsumer

•  Publish/Subscribe(Topics)-Broadcastamessagetoallthesubscribers

Page 66: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2MB-Features

•  DistributedQueues-Providesstrictorbesteffortsupportforin-orderdelivery.

Page 67: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2MB-Features

•  DurableSubscrip-on-Sametopicassubscrip-on.Subscriberoffline>Messagegetsqueued

Subscriberbackonline>Messagesgerngdelivered

Page 68: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2MB-Features

•  ShareDurableSubscrip-on-Purposeofloadbalancing

Page 69: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2ESB5.0

What’sNext?

•  Media-onDebugger•  BeUerSta-s-cs•  MessageTracer•  Websockets•  DataMapper

Page 70: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

ESB5.0-Media-onDebugger

What’sNext?

Page 71: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

ESB5.0-MessageTracer

What’sNext?

Page 72: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

ESB5.0-Media-onSta-s-cs

What’sNext?

Page 73: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2ProcessCenterWhat’sNext?

Processpar-cipant

Create/Improve/Standardize

Search/

Browse/

Follow

Developexecutableprocesses

ExecutableprocessisassociatedwithProcessCenter

Page 74: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

WSO2Gateway

What’sNext?

•  UltrahighperformanceandlowlatencyHTTP/S

messaging•  Supportsthousandsofconcurrentconnec-ons/clients•  FastestopensourceHTTPmessaginggateway•  LightweightMessageMedia-on•  Header-basedrou-ng•  Fullyconfigura-ondriven•  Lightweightandstatelessserviceorchestra-on

Page 75: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

Ques-ons?

Page 76: WSO2Con ASIA 2016: WSO2 Integration Platform Deep Dive

ThankYou