IBM Software Group An Introduction to WebSphere Message Broker © 2007 IBM Corporation IBM Software Group | WebSphere software Agenda ESB Market Dynamics What is an ESB? What is Message Broker? Message Broker Constructs Product Architecture What’s new in 6.1 Roadmap 2 IBM Software Group | WebSphere software The Connectivity Challenge Customers want to improve this…. … to run their business like this. Why? Reduce Complexity Manage Exponential Change Ensure Compliance Reduce Cost Improve Control 3 IBM Software Group | WebSphere software IT Spending Dilemma Customers want to allocate more money for new projects 100% 100% New projects 76% New projects 76% 50% 50% Maintenance & operation of existing applications Time Maintenance & operation of existing applications Time 4 IBM Software Group | WebSphere software SOA simplifies connectivity interfaces… SOA turns this… Application Application Application …into this. Application Service Service Interface Application Application Application Application Service Service Interface Interface Interface Interface Interface Interface Service Service Service Service = interface SOA: Introduces rich business abstractions to describe the application interface. Decouples the interfaces from the business applications. Reduces the number and technical complexity of interfaces. Enables re-use of both the business applications and their interfaces. …but you still need to know (1) what services you can connect to, (2) where they are, (3) how to connect to them, (4) how to log into them, (5) how to mediate the differences in data between them. 5 IBM Software Group | WebSphere software Agenda ESB Market Dynamics What is an ESB? What is Message Broker? Message Broker Constructs Product Architecture What’s new in 6.1 Roadmap 6 IBM Software Group | WebSphere software What is an Enterprise Service Bus? An Enterprise Service Bus (ESB) is a flexible connectivity infrastructure for integrating applications and services. An ESB performs the following between requestor and service MATCHES & ROUTES communications between services CONVERTS between different transport protocols TRANSFORMS between different data formats IDENTIFIES & DISTRIBUTES business events Shape = Transport protocol Color = Data format 7 IBM Software Group | WebSphere software An ESB gives SOA its full value An ESB turns this… Service Service Interface …into this. Service Service Interface Interface Service Service Service Service EnterpriseService ServiceBus Bus Enterprise Interface Interface Interface Interface Service Service Service Service Service Service Service Service The ESB: Connects and signs Communicates you into the using the right appropriate service protocol. without requiring a hardcoded connection. Customizes Logs and communications manages the so that the interaction and message to the correlates receiver makes events. sense. The ESB Virtualizes access to services. 8 IBM Software Group | WebSphere software Agenda ESB Market Dynamics What is an ESB? What is Message Broker? Message Broker Constructs Product Architecture What’s new in 6.1 Roadmap 9 IBM Software Group | WebSphere software ESB offerings from IBM WebSphere WebSphere Message Broker WebSphere ESB Built on WebSphere Application Server for an integrated SOA platform Built for universal connectivity and transformation in heterogeneous IT environments WebSphere DataPower Integration Appliance Purpose-built hardware ESB for simplified deployment and hardened security 10 IBM Software Group | WebSphere software What is WebSphere Message Broker? Built for universal connectivity and transformation in heterogeneous IT environments Built on WebSphere MQ Multiple platforms Range of EAI patterns Standard protocols High volume processing Extensive transformations of data formats 11 IBM Software Group | WebSphere software Agenda ESB Market Dynamics What is an ESB? What is Message Broker? Message Broker Constructs Product Architecture What’s new in 6.1 Roadmap 12 IBM Software Group | WebSphere software How Do we Connect Applications? Protocols Applications need to talk with each other over a communications protocol. e.g. MQ, TCP/IP, HTTP, File system, FTP, SMTP etc. Message Formats Applications need to exchange data, with specific formats e.g. Binary (C/COBOL), XML, Industry (SWIFT, EDI, HL7), User-defined Mediation Patterns Mediation patterns allow applications to interoperate. e.g. Route, Transform, Enrich, Filter, Monitor, Distribute, 13 IBM Software Group | WebSphere software WebSphere Message Broker – Protocols and Applications Industry and Vendor Protocols IBM Protocols WebSphere MQ (+ PM4Data) Any 3rd-party JMS (Enterprise applications (+ managed file transfer)) (TIBCO EMS, Sonic MQ, BEA JMS, webMethods, See Beyond, Vitria) WebSphere MQ Everyplace TIBCO Rendezvous (Mobile device applications) (plug-in component) WebSphere MQ Telemetry HTTP and HTTP(S) (RFID, sensors & actuators) FTP and File WebSphere MQ Real-time (Very low latency over WANs, and the Internet) TCP/IP Sockets WebSphere MQ Multicast SMTP (Reliable Multicast Messaging (RMM)) (Very low latency for LANs) CICS SAP Oracle Siebel JDEdwards Custom Peoplesoft Enterprise Applications 14 IBM Software Group | WebSphere software WebSphere Message Broker Constructs – Flows and Nodes Message Flows . Provides the processing sequence required to connect applications together Nodes Performs a different (input, output or processing) action 15 IBM Software Group | WebSphere software WebSphere Message Broker Constructs - Mediation Patterns Mr. Smith, Graphics Card, 32, 100, 11/07/08 [Customer, Order, Quantity, Price, Date] An Application Integration Scenario. •Application A sends some data to application B with agreed format (UK currency) •Application C is introduced. It needs the same data, but needs data in different format (US currency and XML) •So, we now have an integration choice to make. Either application C must be enhanced to support the data format between A and B, or application A must be enhanced to support application C's data format. <order> <name> <first>John</first> <last>Smith</last> </name> <item>Graphics Card</item> <quantity>32</quantity> <price>200</price> <date>07/11/08</date> </order> [Customer, Order, Quantity, Price, Date] 16 IBM Software Group | WebSphere software What are Message Flows? Message flows are transactional – Provides vital processing and data manipulation – Completes all or none of its processing successfully. Message flows are multithreaded – Message passing through a series of nodes will execute on a single thread. To allow – message flows can be defined with many additional threads assigned to them to increased message throughput. – Peak workloads use additional threads, which are pooled during inactivity. Message flow nesting and chaining allow construction of enhanced capabilities. – Sophisticated flows can be rapidly constructed by linking individual flows together as well as nesting flows within each other. 17 IBM Software Group | WebSphere software Message Flow Example Output target (Failure) Input source A message flow contains the set of operations required to take a message from an originating application and deliver copies of it, some possibly transformed, to any number of connected applications for processing. Output target Transform Output target 18 IBM Software Group | WebSphere software Message Flow Scenario Routing decision is made based on a field described in the incoming message Message is routed to the ‘Generate batch file’ node, which formats the message for subsequent output to a file in the ‘Write file’ node. Message is transformed that is recognizable by the web service which is invoked by the subsequent ‘Call WS’ node. 19 IBM Software Group | WebSphere software Nodes The building blocks of message flows Each node type performs a different (input, output or processing) action Many different node types – Grouped into logical categories in the message flow editor 20 IBM Software Group | WebSphere software Node Types Input Protocol-specific Output Transformation Processing Logical construct Examples: HTTP Input JMS Output Database Insert MQ Get XML Transform Try Catch 21 IBM Software Group | WebSphere software Message Node Components output connectors node input connector Action input message tree input terminal output terminals output message trees • Nodes represent functional routines encapsulating integration logic • Terminals represent the various outcomes possible from node processing • Connectors join the various nodes through their terminals 22 IBM Software Group | WebSphere software Message Broker Parsers Model Input Message Bit-stream F r e d S m i t h , G r a p h i c s Parser converts bit-stream to logical structure Model C a r d … Parser converts logical structure to bit-stream < o r d e r > < n a m e > M r . S m i t h < / n … Output Message Bit-stream 23 IBM Software Group | WebSphere software A Typical Parser Example Harry was the “parser” – he took the physical representation of the London Underground and converted into a logical structure. This logical structure is very much easier to work with. Into this Message Broker uses logical structures to describe physical data for similar reasons: it makes them much easier to work with, particularly when addressing or converting between data elements. 24 IBM Software Group | WebSphere software Message Modeling in Message Broker Physical XML <order> <name> <first>John</first> <last>Smith</last> </name> <item>Graphics Card</item> <quantity>32</quantity> <price>200</price> <date>07/11/08</date> </order> Logical Order Name Item String CSV Custom Qty Integer Price Date Integer Date John,Smith,Graphics Card, 32,200,07/11/08 John Smith............ Graphics Card......... 3220020071108......... First Last String String Same logical tree regardless of formats making it easy to add new formats 25 IBM Software Group | WebSphere software Different options for creating Message Models C Header COBOL WSDL Copybook Pre-built XML Schema DTD Enterprise Information System SOAP, MIME, CSV, IDOC, SWIFT, EDIFACT, X12, FIX, HL7, etc (SAP, Siebel, PeopleSoft) Define your own using the Eclipse-based Tooling WebSphere Transformation Extender File Import Message Set Type tree Parsers Message Broker 26 IBM Software Group | WebSphere software Message Transformation The conversion of one message format into another Graphical, easy to use Convert XML to anything Drag and Drop fields, apply functions Uses standard XSL Style sheets Describe powerful transformations quickly Uses Java programming language Uses SQL-based language (ESQL) Ability to use XPath Run a WebSphere Transformation Extender map 27 IBM Software Group | WebSphere software Examples of Message Addressing public class jcn extends MbJavaComputeNode { public void evaluate(MbMessageAssembly assembly) throws MbException { ... String lastName = (String)assembly.getMessage().evaluateXPath(“/Body/Order/Name/Last”); ... } } IF Body.Order.Date < ‘2008/01/01’ THEN INSERT INTO Database.OldOrders (LastName,Item,Quantity) VALUES (Body.Order.Name.Last, Body.Order.Item, Body.Order.Quantity); ENDIF; 28 IBM Software Group | WebSphere software Agenda ESB Market Dynamics What is an ESB? What is Message Broker? Message Broker Constructs Product Architecture What’s new in 6.1 Roadmap 29 IBM Software Group | WebSphere software Product Architecture Broker Configuration Manager Message Broker Toolkit Broker Broker Broker Development and Administration Environment Manages a domain of brokers Standalone runtime environment Based on Rational Application Developer Drives deployment Controls access to domain Execution groups for isolation and scalability Many different platforms Also provides runtime security model and augmented pub/sub Windows and Linux 30 IBM Software Group | WebSphere software Typical User Roles and Environments Application Developer – Develops message flows, message models etc. – Unit Tests on local machine – Creates Broker Archive (BAR) files containing required artefacts Administrator – Customizes BAR for target environment (message flow properties including queues, database names etc.) – Deploys BAR to target broker – Broker management and operational control – Monitoring… Development Test QA Production 31 IBM Software Group | WebSphere software Monitoring Broker provides extensive monitoring and tracking capability – Accounting and Statistics – Message Tracking Exits Many monitoring and message tracking tools available from IBM and Business Partners, for example – IS02 SupportPac – Omegamon XE – Q Nami! – ITCAM for SOA Web Services Navigator Response Time Broker event publishing – e.g. Ability to publish business events Message Count Message Size 32 IBM Software Group | WebSphere software Usage Patterns with Message Broker Service Enablement Message Enablement File Processing Service Virtualization Message Brokering Event Processing OR OR OR 33 IBM Software Group | WebSphere software Agenda ESB Market Dynamics What is an ESB? What is Message Broker? Message Broker Constructs Product Architecture What’s new in 6.1 Roadmap 34 IBM Software Group | WebSphere software Version 6.1 Feature Overview Ease of Use and Productivity – – Reducing the time to get started with Message Broker Simplifying development tasks including debug; reducing the time to create working solutions Enhanced SOA support – – – Supporting Web Services natively with WS-Security and WS-Addressing DataPower SOA appliance for WS-Security Integration and enhancement of WSRR support Extended Connectivity – – – – Built-in nodes for EIS access: SAP, Siebel and PeopleSoft, Oracle eCommerce and JD Edwards Native support for very large file processing, including FTP New SMTP and TCP nodes WTX integration including launcher capability Administration, Security & Systems Management – – – Enterprise-wide identity, authentication and authorization with Tivoli and LDAP MB Explorer Eclipse administration Numerous manageability improvements Platform Support and Performance – – – – – 64 bit Linux; JDBC XA support; Java 5 Ultra High Performance XML parser including schema validation Compacted memory footprint; Real-time graphical performance analysis Significant performance improvement on ALL platforms New Started Edition, Remote Adapter Deployment and Trial Version 35 IBM Software Group | WebSphere software Agenda ESB Market Dynamics What is an ESB? What is Message Broker? Message Broker Constructs Product Architecture What’s new in 6.1 Roadmap 36 IBM Software Group | WebSphere software WebSphere Message Broker Product Roadmap V7.0 IBM's plans, directions, and intent are subject to change or withdrawal 2H 2009 Web Services IPV6 Performance gains New Development Toolkit V6.1.0.2 Extensions, demos and samples CD 1H 2008 Improved Administration with MQ Numerous operational improvements V6.1 2H 2007 Patterns and Impact Analysis Product and pre-requisites simplification Integrated MQ Pub-sub and Admin Message tracking Web Services (Phase 3) SCA Interoperability V6.0.2 Q4 2006 Mapping and Message Modelling New nodes V6.0.0.2 Q3 2006 Ease of Use for Development experience V6.0.0.1 Extended Web Services support Q1 2006 Service Registry and Repository enhancements V6 Additional native connectivity (SAP, File, SMTP…) Q3 2005 Security and Administration enhancements Performance enhancements & 64 bit zLinux Major release Minor release 37