You are on page 1of 5

Integrating Internet Data Streaming into the Enterprise Middleware Layer

The increasing demand for real-time data has companies of all kinds seeking ways to stream information to users over the internet, both at their desks and on the go. Two key technological developments are paving the way for this trend: o Internet push/streaming technologies: The web communications approaches known as Comet and HTTP Streaming enable the bi-directional, asynchronous delivery of data to HTTP-connected clients, and the emergent WebSocket API and protocol enable full-duplex bidirectional communications over a TCP connection. o Application frameworks: HTML5/JavaScript, Silverlight, and Flash let developers give users a rich user experience including dynamically updated content through Rich Internet Applications that run in web browsers without requiring software installation on desktops. In addition, platforms like Apples iOS and Googles Android have caused an explosion in the number of lightweight apps capable of real-time internet-based communication. To date, even with these technologies in play, companies that want to push real-time data to their users have to deploy web streaming servers to do so, and integrate them with the middleware platforms they use to connect applications and distribute information within their organization.

New Integrated Approach


Solace is the leading provider of messaging middleware appliances. Solace has extended its Unified Messaging Platformwhich provides reliable, guaranteed, JMS, low latency, IPC and WAN distributionto seamlessly support the streaming of real-time data over the internet. This lets companies quickly and cost-effectively add internet streaming capabilities to their IT infrastructure so they can give people inside and outside of their organization rich, dynamically-updated and interactive views of information. Examples include: o Enterprise: retail brokerages, FX trading, mobile workforce, logistics, and emergency response. o Consumer: web properties, sports, news, gambling, online gaming, auctions, and social media. This paper describes the architecture and advantages of Solaces Web Messaging solution, as well as its unprecedented performance. Solaces solution is 50-200 times faster than competitive solutions with latency under 100 microseconds, (not milliseconds like competitors) and throughput of 4 million messages and 10 Gbps per second.

Copyright 2011 Solace Systems, Inc. All Rights Reserved.

Integrating Web Messaging into the Enterprise Middleware Layer

Solaces Appliance Advantage


Solaces Unified Messaging Platform is based on a purposebuilt appliance that handles all of the requirements for messaging across the enterprise between server applications and distribution to internal desktops, including reliable, guaranteed, JMS and WAN messaging. Solaces appliance is ideally suited for web messaging because it provides exactly what application developers need: a full-featured, bidirectional, real-time messaging system that works seamlessly over the internet to RIAs, as opposed to streaming solutions that need to be integrated with existing messaging systems. Solaces Web Messaging solution provides real-time connectivity through internet intermediaries such as proxies, firewalls, network address translators, and provides lightweight, efficient, feature rich and easy to use messaging APIs. Solace messaging appliances provide scale, capacity, high rate, low consistent latency and robustness unmatched by any software messaging system or streaming server, which is why they have been adopted by many of the worlds largest companies, including tier 1 investment banks and mobile data carriers. So by simply adding support for the latest application frameworks and presentation technologies used in internet data streaming to its APIs and providing a web/HTTP transport, Solace has developed the only messaging platform that offers a unified solution for real-time communications across intranet/LAN and internet/web environments, supporting the features and message exchange patterns needed to satisfy all applications.

Advantages and Benefits of Solaces Web Messaging Solution


o Scalability: Solaces solution provides external connection fanout scalability without placing large scalability demands on the internal messaging system. o Performance: Solaces all-hardware datapath ensures the ability to process an input message rate of millions of messages per second, millions of topics and subscriptions and provide higher fanout rates with much lower, more predictable latency than software solutions. A single appliance supports fanout message rates of 4 Million msgs/sec and 10Gbps of bandwidth. o Messaging functionality: Solaces full-featured messaging system offers much more than a raw internet byte pipe, it gives developers access to all of the messaging features and qualities of services used by server applications, such as topic-based publish/subscribe with wildcard subscriptions, request/reply, per-client message rate limiting, structured messages, authentication, per-user & per topic access controls. o Lightweight, simple RIA APIs: Solaces RIA APIs have a low code and memory footprint, are very simple and intuitive to use and feature very efficient runtime, which leaves more CPU for the RIAs while still providing rich messaging functionality to application designers. o Manageability: Detailed management of TCP connections, queue thresholds,events, user capabilities, data backup/restore and more. o Reliability: A datapath implemented in hardware means increased robustness because it is not susceptible to standard internet attacks and software incompatibilities with other server software. o Peer-to-Peer: Solace supports client-to-client communication within the Solace appliance so clients can have chat sessions with one-on-one or in a group with all messaging contained to the Solace appliances in the DMZ.

2
Proprietary and Confidential

Integrating Web Messaging into the Enterprise Middleware Layer

Conventional Web Streaming Solutions


Most internet distribution solutions include the following components, architected something like the diagram below. o Client APIs: APIs that run in RIAs in containers such as Microsoft Silverlight, Adobe Flash, Java Virtual Machines (JVMs) or browsers using JavaScript, or running on smartphones and mobile devices. Some provide only a raw packet pipe without much messaging functionality, a few others provide more messaging functionality to the application, but all provide the ability to dynamically establish a connection between the client application and the datacenter through whatever internet intermediaries (proxies, firewalls, NATs, load balancers) that may exist along the way, so they hide this complexity from the application and this is an important part of the value they provide. o Web Streaming Servers: Streaming servers that sit in the demilitarized zone (DMZ) and translate between internet streaming and transport protocols used by the internal messaging system. They are often implemented in Java and thus have the scalability and performance of Java applications, and dont offer generic messaging capabilities. o Streaming Server-to-Messaging Integration: Typically, companies need to integrate the streaming server to the back-end messaging system to perform transport and payload conversion, and helper functions may also be required in the GUI runtime. o Internal Message Bus(es): No software message bus products used for internal messaging support Internet streaming and Internet streaming products typically dont support the functionality and performance required of internal messaging systems, so deployments today tend to have different messaging products for internal application use vs Internet streaming Often times, multiple internal messaging systems might be used: one for streaming information, another for transactional system interactions. o Management: The management tools provided to monitor streaming servers varies greatly, but typically little external management is available and integration with 3rd party umbrella management, authentication and other systems is left to the user. In any event, certainly the management, security, monitoring mechanisms in the web streaming tier are different from those used by the internal enterprise messaging system.

Disadvantages of Standalone Streaming Servers


o Performance and scalability: Web streaming servers implemented in software struggle with output rate and consistent latency in usecases where the input message rate is high and the fanout requirements and subscription count are large. Functions like payload transformation,per-connection bandwidth management and realtime monitoring degrade performance even further. To perform publish/subscribe fanout in the streaming server, you either need to map external connections 1:1 back to the internal messaging system (as with JMS), or perform per-client fanout in the streaming server, which means you need to track subscriptions, route messages, etc.again, requiring developers to build messaging functionality. o Messaging Functionality: Web streaming servers act as gateways, and dont offer messaging capabilities such as publish/subscribe, request/reply, user authentication/authorization, and machine independent data types. This means developers must spend their time building messaging functionality into this web streaming layer. o Another integration and distribution tier: A separate web streaming solution must be deployed, integrated with the existing middleware, and folded in to functions such as administration, security, and capacity planning. o Differences in internal and external applications: Internal installed applications will need to use different APIs, semantics and data formats than applications and RIAs connecting over the Internet, or at least require additional bindings to the new gateway, including data and semantic translations.

3
Proprietary and Confidential

Integrating Web Messaging into the Enterprise Middleware Layer

Solaces Approach
Solaces solution is the only one that can serve as an internal message bus and seamlessly extend messaging services for internet data streaming, cost-effectively providing ubiquitous reach to applications and users inside the organization and anywhere in the world. A Solace appliance serving internet users is deployed in the DMZ where it accepts incoming connections from clients over the internet on one side, and TCP-based intranet connections with the message bus deployed inside the companys firewall (which could be another Solace appliance or third-party messaging software). As a result, Solace makes messaging over the internet a secure extension of the internal messaging network rather than a custom integration/translation between two disparate technologies. A complete discussion of the value of this architecture is below, but here are a few important notes: o Solaces inter-appliance routing protocols reduce the number of connections and amount of traffic through the internal firewall because each Solace Web Messaging appliance can receive each message once and perform per-client fanout from there. This minimizes the impact and load on the internal messaging system, resulting in a very scalable infrastructure. o Solaces appliance provides native access to common LDAP services as well as more sophisticated functions such as per-topic access controls. o Even when deployed exclusively for internet streaming, Solaces appliance provides messaging functionality such as publish/subscribe, request/reply, authentication and authorization, per-topic fanout rate control, and monitoring.

Game-changing Performance
In a variety of tests covering different message rates, numbers of connected clients, and network environments, Solaces solution demonstrated vastly superior performance in terms of raw latency and consistent of latency. The chart below exemplifies the kind of advantage Solace offers. The results of exhaustive testing are fully documented in a 16-page whitepaper that is available via our web site at http://solacesystems.com/webmessaging. This test shows that Solaces solution introduces nominal latency into the equation double digit microseconds compared to the many milliseconds (each one of which represents 1,000 microseconds) introduced by competitive solutions. That means Solace is 50-200x faster. The results also demonstrate the tight latency distribution of Solaces solution, with low standard deviation even th when considering the 99.9 percentile. The test was run with 20,000 topics, and each message consisting of a 50 Byte payload and 5 Byte topic. Each client was configured with 100 subscriptions, and set to receive messages at a rate of 100 messages per second. The network was 1 Gigabit Ethernet.

4
Proprietary and Confidential

Integrating Web Messaging into the Enterprise Middleware Layer

Solace Web Messaging in Context of a Third-Party Messaging Infrastructure


Some companies want to add internet distribution capabilities as an extension of their existing internal messaging platform. By handling everything related to internet fanout in a single appliance that can be quickly and easily dropped in to a datacenter and linked with existing messaging systems, Solace makes it easy and cost-effective to extend existing systems with real-time web messaging. In such a deployment, Solaces solution offers high-performance bidirectional web messaging without placing heavy load on the existing message bus because Solaces appliance automatically distributes each message to many appropriate clients based on subscription so theres no need for 1:1 mapping of client connections to the message bus, or for complex mappings to fan one message out via many external connections. This reduces the layers of infrastructure for easier management and superior performance and thus also supports direct peer-to-peer communication.

Solace Web Messaging in Context of a Solace Messaging Infrastructure


The Solace Web Messaging solution is even more powerful for companies who also use Solace for messaging from their internal data sources as it provides a strategic, ubiquitous solution. By extending intranet messaging to include web messaging, companies can have one truly unified messaging platform for all of their internal and external messaging, including: o When Solace is used as the internal message bus and for internet connectivity, applications connect using the same API whether theyre deployed within the intranet or over the internet since theyre connecting to the same platform. The Solace API determines the most efficient transport based on the capabilities of the application and presence of intermediaries such as HTTP proxies. o A common framework for provisioning, managing, monitoring and securing all messaging components regardless of whether they are used for internal or external message distribution, all without gateways and tiers of infrastructure. o Simpler and more efficient data distribution since there is no integration between different messaging systems. o No integration effort, costs or components are required (API integration, data transformation, messaging semantics integration) between the internet gateway of Vendor A and the messaging system of Vendor B with an all-Solace solution, internet fanout is simply an extension of the existing internal messaging network.

5
Proprietary and Confidential

You might also like