170 likes | 324 Views
IBM Support for FIA (FIXML) Messaging Enterprise Service Bus View of Standards The Evolution of Messaging for Financial Services March 2005. Jim Glenister IBM Consultant, WebSphere Software. WMQ and FIXML Standards for Financial Services. FIA to spearhead related efforts:.
E N D
IBM Support for FIA (FIXML) Messaging Enterprise Service Bus View of Standards The Evolution of Messaging for Financial ServicesMarch 2005 Jim Glenister IBM Consultant, WebSphere Software
FIA to spearhead related efforts: Establishing standards for message transmission • Message Descriptors • Standardize on the usage of Message Descriptors • Put and Get • Guidelines for setting fields and Options in an MQ-Put • Guidelines for setting fields and Options in an MQ-Get • Queue Definition • Queue Depth based on volume • Maximum Message Length • Message Data Formats • Standardize on the use of ASCII for FIXML messages • Dead Letter Queues • Processing messages from Dead Letter Queues • Channels Exit Routines • Hardware requirements / Software requirements Origin Destination Date/Time Sequence Nbr Type Exchanges and Firms to work with FPL to define a FIXML messaging API for re-transmission of messages
Messaging Service Environment Characteristics • Multiple Platforms (zOS/OS390, UNIX , Windows NT/2000, AS/400, Tandem) • "Store and Forward" of Messages • Assured Delivery (Once, and only once) of Message Objects • Persistent or Non-Persistent Messages (Designated by message) • Priority Levels on Messages • Purge of "Killer" Messages that Repeatedly Cause Failures • Message Expiry (Time-to-live for a given message) • 24 x 7 Continuous Operation • Transactional Integrity as a Resource Manager and Recovery Coordinator • Failover and Automated Recovery of Messaging Access to Business Services • High Volume Performance with Peak Load Handling Mechanisms • Flexible Message Resource Naming (Alias names that reflect business service ) • Security (Protected message resources, data privacy via encryption, intrusion protection) • Automated Management Controls (Programmed commands, monitoring, event alerts) • Feedback: Confirmation and Notification Reports • Message Logging (Optional redundant logging) • Large Objects ( --> 100MB)
Messaging Application Characteristics • Multiple Platforms (zOS/OS390, UNIX , Windows XP/2000, AS/400, Tandem) • Consistent APIs in Multiple Programming Languages (Java, C, Cobol, Others) • "Business Service Name" Transparently Mapped to Message Destinations • Transparent Placement of Messages on Local or Remote Queues • Support for Synchronous and Asynchronous Style • Shared or Exclusive Queue Usage • Message Arrival Triggers Initiation of Server Processes • Multiple Servers Concurrent Access to Queues with Preservation of Message Integrity • Correlation of Requests and Corresponding Replies • Selective "Get" of a Specific Message from the Message Queue • Non-destructive Browsing of Message Queues • Selective Commit/Rollback (Syncpoint) Controls for Unit of Work Integrity • Support for XML Messages • Applications Have No Communications Network Responsibility or Awareness • Multiple Programming Models Supported by Messaging • Client-Server • One-way Event Push (Asynchronous "Fire-and-Forget" Datagram) • Publisher-Subscriber • Object Oriented Design (e.g., JMS Message Driven Beans) • Multi-step Workflow Processing
WMQ: Design for Performance Exploitation of WMQ Capabilities • Priority scheduling of messages and processes • Thresholds on queues • Load-responsive multiple server instantiation (e.g., Triggers) • Alias queue name = service name (can inhibit G/P, change priorities) • Message channel and queue activity (persistent, non-persistent) • Logical unit of work (syncpoint) controls (MQCMIT, MQBACK) • Batch transmissions across channels Efficiencies for Throughput and Fast Response • Long running tasks (eliminates startup/shutdown transients) • Persistent-connection channels between queue managers • Parallel processes (e.g., Logging can be asynchronous via MQ) • 'Fast Path' techniques Resources Allocated to Meet Critical Peaks (Chaos Control) • Deferred processing of non-critical requests • Deferred processing of secondary activities • MQSeries Log on separate, high speed devices • Page sets and buffer pools
WMQ High Availability - Cluster Groups • Transparent Access to QMs and Queues in a Cluster • Workload Balancing via WLM Exit • Failover to Surviving Members of Cluster Group • Application Affinity (Requester-Server) if Required • Administrative and Operational Support (e.g., Q Definitions, Suspend/Resume)
WMQ and WBI Family Product Detail and DirectionsGraham Oakes, IBM
Summary • IBM appreciates the opportunity to work with FIA to evolve the FIXML over WMQ standards needed for high performance and reliable communication. • The objective of an ESB approach is to transcend the WMQ transport layer with value add services that reduce the cost of developing and managing disparate interfaces. An FIA sponsored ESB can enable sharing of standards and components that implement them: • A communications “architecture” that enables software applications that run • on different platforms and devices • or which are written in different programming languages • or which use different programming models • or which use different data representations • to reliably communicate with no disruption to existing applications or interfaces. • IBM has the most comprehensive WMQ and ESB skills, experience and offerings that we can share with the FIA membership. The formation of a working group and named interfaces to pursue the standards is recommended as the next step.