to esb or not to esb
play

To ESB or not to ESB Ross Mason MuleSoft About Me Agenda When to - PowerPoint PPT Presentation

To ESB or not to ESB Ross Mason MuleSoft About Me Agenda When to When to When to When to When not When not When not When not Some Some Some Some ESB ESB to ESB to ESB options options Vendor ESB Reality Check Know your


  1. To ESB or not to ESB Ross Mason MuleSoft

  2. About Me

  3. Agenda When to When to When to When to When not When not When not When not Some Some Some Some ESB ESB to ESB to ESB options options

  4. “Vendor” ESB

  5. Reality Check

  6. Know your Architecture

  7. Architecture Checklist � Identify systems and processes � Create an integration profile � Map data flows � Set performance requirements � Define security requirements � Identify redundancy requirements � Quantify QoS requirements

  8. Bling, innit

  9. To ESB � Numerous integration points � Need to grow the architecture � More that one protocol � Mediation requirements � Scalability, Management, Monitoring, Transformation and Security requirements � Strategic Projects

  10. Not to ESB “We need access to a message queue”

  11. Not to ESB: RDD

  12. Not to ESB: YAGNI

  13. cha-ching I’ll buy your software Not to ESB: GOLF

  14. What are the options?

  15. Web Services • Pros: – Language, platform, and transport agnostic – Mediation support – Built-in error handling (faults) – Extensibility – Extensibility • Cons: – heavy-weight – verbose – Hard to develop, requires tools – Sprawling WS-* standards

  16. REST • Pros: – Language and platform agnostic – Small learning curve, less reliance on tools – Concise & Clean • Cons: • Cons: – Assumes a point-to-point communication – Lack of standards support for security, policy, reliable messaging, etc. – Tied to the HTTP transport model

  17. Custom code • Pros – Quick solution – Tailored to the specific problem • Cons – Need to maintain more code – Difficult to change over time – Need to build security, management, reliability – Slow to add new capabilities – No core business activity 18

  18. Integration Scenarios

  19. Simple Integration Frontend (web app) REST / Web Services Backend Service

  20. Partner Data integration Partner B2B Services Web Services Partner

  21. Public API Services Public API REST Web Client Web Client

  22. Mixed Integration Frontend (web app) ESB REST JMS FTP Backend Application Backend Service Backend Application

  23. ESB Integration Supplier 1 Supplier 2 Supplier 3 request bids order from Supplier 3 Inventory Inventory Fulfillment Fulfillment Bidding Bidding Order Service Order Service Service Service Purchasing bid selected create supply bid place order ESB out of stock Inventory request items Service Inventory

  24. iBeans easy service integrations

  25. Foundation • Abstraction for the complexity of SOA • Open source framework • Lineage, pedigree of Mule ESB • 15+ iBeans ready for production • “Micro-light ESB”

  26. Communication • Reusable Java modules • Bean interface to networked services – Not just SOAP, REST • Communications channels – Ajax from JavaScript – RPC – Java

  27. Use cases • Situations where an ESB is too heavy • Social media app integrations • Easy cross-webapp reuse • Point-to-point integration • Seamless migration path to Mule ESB

  28. GPS Walker demo

  29. http://10.0.17.238:8080/gpswalk er/cursor.html er/cursor.html

  30. Overview

  31. The pieces Runtime Container: Tomcat, Tcat, (Mule) iBeans Runtime Channels: HTTP, SMTP, IMAP, Formats: JSON, RSS, ATOM, REST, JDBC, JMS, XMPP, FTP XML, SOAP Scheduler Scheduler Transform and Bindings Transform and Bindings Application Annotations iBean Objects Web apps console your web apps

  32. Summary • Technology selection must be driven by architecture • ESBs are good for integrations with multiple participants participants • REST/WS are better suited to other integration problems • iBeans offers a point-to-point to ESB migration path

  33. Questions?

  34. • Embedding Mule in a web application not usually a good idea Web App Web App Web App Consumes services from ESB / Integration platform

Recommend


More recommend