Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Deep-dive	into	WSO2	ESB	5.0	
Kasun	Indrasiri		
Director,	Integra;on	Technologies	
WSO2	 Oct	2016	
WSO2	Workshop,	Mountain	...
Agenda		
o  Introduc;on	to	WSO2	PlaKorm		
o  WSO2	ESB	in	a	nutshell		
o  What	WSO2	ESB	5?		
o  Data	Mapper	
o  Media;on	De...
WSO2	Pla1orm
WSO2	Integra7on	Pla1orm
WSO2	ESB	in	a	nutshell	
o  A	light	weight,	high	performance	ESB	
o  Comprehensive	REST,	SOAP,	WS-*	support		
o  SAP,	FIX,	...
Understanding	ESB	Message	Flow		
o  Message	entry	points,	message	processing	and	message	exit	
points.		
kasun@wso2.com
Why	WSO2	ESB	5.0?		
o  Enhanced Developer experience
o  Data Mapper
o  Mediation Debugger
o  Analytics
o  Mediation Statis...
Data	Mapper		
o  Visual message transformation between two message formats.
o  Supported message formats : JSON, XML, CSV
...
Data	Mapper		
o  Visual data mapping with operations.
Understanding	Data	Mapper		
o  Using	Data	Mapper	
o  Drag	and	drop	Data	Mapper	mediator	to	message	sequence.		
o  Provide	...
Media7on	Debugger		
o  Mediation Debugger allows you to remote debug your message
mediation flows.
Media7on	Debugger	–	Features			
o  Set breakpoints and pause message flow.
o  Inspecting message headers, payloads and pro...
Configuring	Media7on	Debugger	
o  Start	ESB	with	:	sh	wso2server.sh	-Desb.debug	
o  Run	>	Debug	configura=ons	>	ESB	Media=on...
Media7on	Debugger		
o  Debugging	a	message	flow.
Media7on	Debugger		
o  Debugging	with	wire	logs
ESB	Analy7cs		
o  Media7on	Sta7s7cs	-	Coarse-grain	and	fine-grain	sta;s;cs	of	your	
integra;on/media;on	flow.	
o  Message	Tr...
ESB	Analy7cs	–	Media7on	Sta7s7cs		
o  Overview	sec7on:	No	of	requests,	TPS,	successful	and	failed	requests,	
ar;fact	level...
ESB	Analy7cs	–	Media7on	Sta7s7cs		
o  Drill-down	based	on	ar7fact	type	:	Proxy	Services,	REST	APIs,	Sequences	
and	Endpoin...
ESB	Analy7cs	–	Media7on	Sta7s7cs		
o  Fine-grained	sta7s7cs	of	media7on	flows	:	Profiling	your	media;on	flows	
to	iden;fy	pos...
ESB	Analy7cs	–	Message	Tracing		
o  Enable	message	tracing	for	selected	message	flows	and	trace	the	en;re	
message	path
ESB	Analy;cs	–	Message	Tracing		
o  Enable	message	tracing	for	selected	message	flows	and	trace	the	en;re	
message	path
ESB	Analy7cs	–	Configuring	Analy7cs		
o  Enabling	data	collec;on	at	ESB	run;me	:	Enable	following	in	
synapse.proper;es:	
o...
WebSockets	Integra7on		
o  Why	WebSockets?		
o  What’s	wrong	with	Polling,	Long	Polling,	Streaming?		
o  Offers	connec;ons	...
WebSockets	Integra;on		
o  WebSockets	in	a	nutshell		
kasun@wso2.com
WebSockets	Integra;on		
o  WebSockets	to	WebSockets	Integra7on		
o  WebSockets	Inbound	Endpoint	receives	the	incoming	WebS...
WebSockets	Integra;on		
o  WebSockets	to	WebSockets	Integra7on	–	Frame	Broadcas7ng		
o  Pub-sub	like	messaging	with	WebSoc...
WebSockets	Integra;on		
o  WebSockets	to	HTTP	Integra7on		
o  WSO2	ESB	defines	a	WebSockets	sub-protocol	extension	to	infor...
WebSockets	Integra;on		
o  WebSockets	to	HTTP	Integra7on		
o  Example:
JMS	2.0	Support		
o  Mul7ple	Consumers	Allowed	on	the	Same	Topic	Subscrip7on		
o  A	message	that	comes	to	a	topic	is	forwa...
JMS	2.0	Support		
o  Detec7ng	Repeatedly	Redelivered	Messages	
o  JMS	providers	to	set	the	JMSXDeliveryCount	property,	whi...
JMS	2.0	Support		
o  WSO2	ESB	as	a	JMS	Producer	and	Specifying	a	Delivery	Delay	on	
Messages	
o  The	JMS	provider	will	not...
Demo	
o  A	service	orchestra;on	use	case	with	mul;ple	backend	services	which	use	
disparate	message	types.
Demo	
o  Sample	Code	
o  hips://github.com/kasun04/dist/blob/master/esb5_deep_dive_use_cases.zip	
o  Run	>>	java -jar maes...
Future	of	Integra7on	Technologies	Landscape		
o  Applica;on	and	data	integra;on	technologies	are	moving	to	
a	dynamic	spac...
Microservices	and	ESB		
o  Rise	of	Microservices	architecture	and	fall	of	ESB.			
o  What’s	the	role	of	Integra;on	in	micr...
Evolving	Enterprise	Integra;on	with	
Microservices		
o  Inner	and	outer	architecture	of	Microservice.
Evolving	Enterprise	Integra;on	with	
Microservices		
o  Inner	and	outer	architecture	of	Microservice.		
Micro Integrations
Micro-Integra;on		
o  Build	a	specific	integra;on	scenario	and	run	that	scenario	
independently	with	a	light-weight	integra...
Micro-Integra;on	in	ac;on		
		
5 – Instances
2 – Instances
10 – Instances
Summary	
o  WSO2 ESB 5.0 features and best practices.
o  Overview of future of Enterprise Integration.
CONTACT US !
Nächste SlideShare
Wird geladen in …5
×

Deep-dive into WSO2 ESB 5.0

Data Mapper, Mediation Debugger, ESB Analytics (Statistics and Tracing), WebSockets, JMS 2.0

  • Loggen Sie sich ein, um Kommentare anzuzeigen.

Deep-dive into WSO2 ESB 5.0

  1. 1. Deep-dive into WSO2 ESB 5.0 Kasun Indrasiri Director, Integra;on Technologies WSO2 Oct 2016 WSO2 Workshop, Mountain View, CA
  2. 2. Agenda o  Introduc;on to WSO2 PlaKorm o  WSO2 ESB in a nutshell o  What WSO2 ESB 5? o  Data Mapper o  Media;on Debugger o  ESB Analy;cs o  WebSockets support o  JMS 2.0 o  Future of Enterprise Integra;on
  3. 3. WSO2 Pla1orm
  4. 4. WSO2 Integra7on Pla1orm
  5. 5. WSO2 ESB in a nutshell o  A light weight, high performance ESB o  Comprehensive REST, SOAP, WS-* support o  SAP, FIX, HL7 - Domain specific solu;ons o  Zero Code/Configura;on driven o  Extensible and Scalable o  100% coverage of all EIPs
  6. 6. Understanding ESB Message Flow o  Message entry points, message processing and message exit points. kasun@wso2.com
  7. 7. Why WSO2 ESB 5.0? o  Enhanced Developer experience o  Data Mapper o  Mediation Debugger o  Analytics o  Mediation Statistics o  Message Tracing o  Expanding Integration capabilities o  WebSockets o  JMS 2.0 o  Product = Runtime + Tooling + Analytics o  Out-of-the box, seamless integration between these components.
  8. 8. Data Mapper o  Visual message transformation between two message formats. o  Supported message formats : JSON, XML, CSV o  Data mapping operations o  Common - constants, properties, compare etc. o  String - concat, split, replace etc. o  Arithmetic - add, subtract, multiply, floor, round etc. o  Boolean - and, or, not o  Conditional - if/else o  Type conversion - stringToBoolean, stringToNumber, toString
  9. 9. Data Mapper o  Visual data mapping with operations.
  10. 10. Understanding Data Mapper o  Using Data Mapper o  Drag and drop Data Mapper mediator to message sequence. o  Provide sample input and output formats : Tool create the visual structure of the message. o  Use data mapping opera;ons to map input message format to the output message format. o  Input/output schema defines the structure of input/output message formats. o  Input/output type : You need to define the message format type of input/output messages (e.g: applica;on/json) o  Mapping configura;on is automa;cally created based on the opera;ons and mapping that you visually configure kasun@wso2.com
  11. 11. Media7on Debugger o  Mediation Debugger allows you to remote debug your message mediation flows.
  12. 12. Media7on Debugger – Features o  Set breakpoints and pause message flow. o  Inspecting message headers, payloads and properties. o  Change the message properties on-the-fly and test integration scenarios. o  Inspect transport wire-logs from the debugger.
  13. 13. Configuring Media7on Debugger o  Start ESB with : sh wso2server.sh -Desb.debug o  Run > Debug configura=ons > ESB Media=on Debugger
  14. 14. Media7on Debugger o  Debugging a message flow.
  15. 15. Media7on Debugger o  Debugging with wire logs
  16. 16. ESB Analy7cs o  Media7on Sta7s7cs - Coarse-grain and fine-grain sta;s;cs of your integra;on/media;on flow. o  Message Tracing – Enable tracing for a selected message flow and trace through the message path.
  17. 17. ESB Analy7cs – Media7on Sta7s7cs o  Overview sec7on: No of requests, TPS, successful and failed requests, ar;fact level sta;s;cs.
  18. 18. ESB Analy7cs – Media7on Sta7s7cs o  Drill-down based on ar7fact type : Proxy Services, REST APIs, Sequences and Endpoints
  19. 19. ESB Analy7cs – Media7on Sta7s7cs o  Fine-grained sta7s7cs of media7on flows : Profiling your media;on flows to iden;fy possible boilenecks.
  20. 20. ESB Analy7cs – Message Tracing o  Enable message tracing for selected message flows and trace the en;re message path
  21. 21. ESB Analy;cs – Message Tracing o  Enable message tracing for selected message flows and trace the en;re message path
  22. 22. ESB Analy7cs – Configuring Analy7cs o  Enabling data collec;on at ESB run;me : Enable following in synapse.proper;es: o  mediation.flow.statistics.enable=true o  mediation.flow.statistics.tracer.collect.payloads=true o  mediation.flow.statistics.tracer.collect.properties=true o  Enabling sta;s;cs and tracing at the each ar;fact level. o  Configure connec;vity between ESB run;me and analy;cs server via: o  <ESB_HOME>/repository/deployment/server/eventpublishers/ MessageFlowConfigurationPublisher.xml.
  23. 23. WebSockets Integra7on o  Why WebSockets? o  What’s wrong with Polling, Long Polling, Streaming? o  Offers connec;ons that are both persistent ("long-lived") and bi-direc;onal ("full-duplex") o  Full Duplex Communica;on Model for the Web o  Increased Client and Server Communica;on Efficiency o  Common usage: Social feeds, Mul;player games, Collabora;ve edi;ng/coding, Clickstream data etc [1]. [1] hip://www.infoworld.com/ar;cle/2609720/applica;on-development/9-killer-uses-for-websockets.html
  24. 24. WebSockets Integra;on o  WebSockets in a nutshell kasun@wso2.com
  25. 25. WebSockets Integra;on o  WebSockets to WebSockets Integra7on o  WebSockets Inbound Endpoint receives the incoming WebSockets requests. o  Client -> Server messages are handled by the ‘injec;ng sequence’ o  Server-Push messages are handled by the ‘ws.ouKlow.dispatch.sequence’ o  WebSockets transport sender sends the WebSockets request to the WebSockets backend service. kasun@wso2.com
  26. 26. WebSockets Integra;on o  WebSockets to WebSockets Integra7on – Frame Broadcas7ng o  Pub-sub like messaging with WebSockets. o  Configure broadcast level at WebSockets inbound endpoint level ‘ws.client.side.broadcast.level’. : 0, 1, 2 kasun@wso2.com
  27. 27. WebSockets Integra;on o  WebSockets to HTTP Integra7on o  WSO2 ESB defines a WebSockets sub-protocol extension to inform the content type of the messages. o  WebSockets client has to send Sec-WebSockets-Protocol header with sub-protocol extension. ESB uses this sub-protocol to iden;fy the incoming message type. o  Handshake messages can be iden;fied with $ctx:websocket.source.handshake.present and should be skipped from the main media;on flow. kasun@wso2.com
  28. 28. WebSockets Integra;on o  WebSockets to HTTP Integra7on o  Example:
  29. 29. JMS 2.0 Support o  Mul7ple Consumers Allowed on the Same Topic Subscrip7on o  A message that comes to a topic is forwarded to only one of the consumers. o  The consumers can share the messages that come to the topic o  Share the workload between consumers. o  Using JMS Inbound endpoint, configure <parameter name="transport.jms.JMSSpecVersion">2.0</parameter> <parameter name="transport.jms.SharedSubscription">true</parameter> JMS Broker WSO2ESB 1 WSO2ESB 2 Topic Shared subscrip;on
  30. 30. JMS 2.0 Support o  Detec7ng Repeatedly Redelivered Messages o  JMS providers to set the JMSXDeliveryCount property, which allows an applica;on that receive a message to determine how many ;mes the message is redelivered. o  WSO2 ESB allows you to detect such repeatedly redelivered messages using the JMSXDeliveryCount property that is set in messages. <log level="full"/> <filter regex="1" source="$ctx:jms.message.delivery.count" xmlns:ns="http://org.apache.synapse/xsd"> <then> <log> <property name="DeliveryCounter" value="1"/> </log> </then> <else> <store messageStore="JMS-Redelivered-Store"/> <log> <property name="DeliveryCounter" value="more than 1"/> </log> </else> </filter>
  31. 31. JMS 2.0 Support o  WSO2 ESB as a JMS Producer and Specifying a Delivery Delay on Messages o  The JMS provider will not deliver the message un;l ater the specified delivery delay has elapsed. o  Configure JMS_MESSAGE_DELAY prior to sending the message out. <property name="JMS_MESSAGE_DELAY" scope="axis2" value="10000"/> <log level="full"/> <call> <endpoint> <address uri="jms:/transport.jms.ConnectionFactory=myQueueConnectionFactory"/> </endpoint> </call>
  32. 32. Demo o  A service orchestra;on use case with mul;ple backend services which use disparate message types.
  33. 33. Demo o  Sample Code o  hips://github.com/kasun04/dist/blob/master/esb5_deep_dive_use_cases.zip o  Run >> java -jar maestro-1.0.0.jar
  34. 34. Future of Integra7on Technologies Landscape o  Applica;on and data integra;on technologies are moving to a dynamic space – Cloud, Mobile, APIs, IoT, Convergence of Data and Applica=on Integra=on
  35. 35. Microservices and ESB o  Rise of Microservices architecture and fall of ESB. o  What’s the role of Integra;on in microservices world? o  How to integrate microservices/create composite microservices? o  The hybrid approach : Microservices and integra;on middleware co-exists in the same ecosystem.
  36. 36. Evolving Enterprise Integra;on with Microservices o  Inner and outer architecture of Microservice.
  37. 37. Evolving Enterprise Integra;on with Microservices o  Inner and outer architecture of Microservice. Micro Integrations
  38. 38. Micro-Integra;on o  Build a specific integra;on scenario and run that scenario independently with a light-weight integra;on framework. o  One integra;on scenario per each run;me. o  Run;me is extremely lightweight and can be deployed as a container. o  Develop, deploy and scale each integra;on scenarios Independently.
  39. 39. Micro-Integra;on in ac;on 5 – Instances 2 – Instances 10 – Instances
  40. 40. Summary o  WSO2 ESB 5.0 features and best practices. o  Overview of future of Enterprise Integration.
  41. 41. CONTACT US !

×