Solace Message Routers

10
Solace Message Routers This paper introduces the architecture, features and performance of Solace message routers which offers low latency, guaranteed, JMS and MQ-style messaging over LANs, WANs and the web.

Transcript of Solace Message Routers

Page 1: Solace Message Routers

Solace Message RoutersThis paper introduces the architecture, features and performance of

Solace message routers which offers low latency, guaranteed, JMS

and MQ-style messaging over LANs, WANs and the web.

Page 2: Solace Message Routers

The SituationCompanies have had to rely on many messaging products to meet data distribution needs.

Sharing and synchronizing

information across increasingly complicated and geographi-

cally distributed IT environ-

ments isn’t easy. Different applications, use cases and networks require vastly dif-

ferent features, functions and performance characteristics, so companies have bought

separate messaging products to

meet different requirements.

The ProblemRunning many messaging products is expensive and hampers innovation.

Purpose-specific messag-ing software needs to be run on dedicated hardware, surrounded by third-party software, and integrated with other messaging solutions. The existence of multiple platforms makes IT infrastructure more complicated, expensive and inflexible than companies can afford it to be in these days of cost cutting and corporate agility.

The SolutionSolace has unified all kinds of enterprise messaging into a

single platform.

Solace has taken a new approach to

messaging middleware: a powerful

platform that distributes data across all

kinds of networks using a variety of APIs

and standards like JMS and node.js, and

satisfy several qualities of service such as

reliable and guaranteed. That functional-

ity and flexibility is delivered as a turnkey

device that’s remarkably easy to deploy

and keep running.

The Results

Solace makes it easy to share an

increasing amount of information across your enterprise.

The superior performance of Solace’s

platform is just one of the ways in which

it adds real bottom line business value

and competitive advantage to all kinds of

companies.

Solace message routers also reduce the

cost and complexity of your IT infrastruc-

ture while making it more stable and

adaptable

Executive

Summary

Page 3: Solace Message Routers

Overview of Solace’s SolutionSolace message routers enable organizations to increase the speed of their application infrastructure, improve the manageability of their system and reduce costs. They support messaging with reliable and guaranteed delivery, persistent and non-persistent JMS, IPC, web messaging and message caching.

Shareable InfrastructureSolace supports the creation of hundreds of virtual messaging environments per appliance, so you can give applications and departments their own message busses without the hassle or expense of buying and configuring new hardware and software. Messages don’t cross between environments unless you want them to, and administrators can configure the behavior of and resources available to each environment. Virtualization also allows several dis-crete development and test environments to be run on one message router.

Architected for Flexibility and ScalabilitySolace’s solution provides flexibility and scalability on two levels. First, each message router is a chassis that can accomodate a number of hardware cards that perform functions such as network I/O, message routing, and guaranteed delivery. This lets customers configure them to meet their needs, and expand functionality over time within that same footprint. Second, Solace message routers automatically propagate subscriptions and share information about network availability so they can identify the shortest path for each message. This means the capacity and/or functionality of a system can be increased simply by deploying another message router.

Messaging as a Service Solace makes the routing and delivery of information available as a network service so developers can create applications without worrying about how they’ll interact with users and other applications. They simply build the application to perform its intended function and tap into the Solace-based infrastructure for messaging functionality. This reduces time-to-market for new services and keeps application complexity to a minimum.

The Solace 3560 can be config-ured with up to 6 10GE ports, giving it enough capacity and performance to meet the needs of the most extreme enterprise messaging applications, as well as big data, cloud and Internet of Things initiatives.

The Solace 3530 cost-effectively meets the needs of less demand-ing organizations that don’t need high capacity or performance.

Why Solace?• Performance: Solace eliminates

the drawbacks of software on servers to deliver data at higher throughput and with less latency.

• Robustness: Solace message routers maintain their perfor-mance in the face of peak and volatile traffic, and in the face of misbehaving client applications.

• Savings: Solace message routers cut capital and operating expenses by meeting messaging needs in a compact, efficient footprint.

• Architectural Simplicity: Solace simplifies your system by support-ing all qualities of services with a single platform, and by reducing the number of brokers you need.

• Operational Simplicity: Solace infrastructure is easy to operate thanks to a unified API and an administration framework that enables real-time monitoring and management.

Solace makes it easy to address all kinds of messaging needs across your business with a compact purpose-built device that’s very easy and cost-effective to deploy and operate.

Page 4: Solace Message Routers

Accessible via Unified API, JMS and Open SourceSolace’s unified API is what makes Solace’s high-performance messaging solution a ‘one stop shop’ for all of your data distribution needs. It provides robust and uniform client access to all of Solace’s capabilities and qualities of service.

Server Applications• C: Low-level threadless API that lets developers use any thread

model. Available for Linux, Solaris, Windows and AIX.

• JMS:Supports JMS 1.1 including queues and topics, and provides an admin console for managing the JMS Provider and JMS managed objects accessible via JNDI.

• Java: 100% pure Java, with support for reliable and guaranteed messaging.

• Java-Real-Time-Optimised (Java-RTO): JNI-wrapped version of Solace’s C API for low-latency Java applications , supports reliable and guaranteed messaging.

• .NET: Simple interface to reliable and guaranteed messaging services for server applications built with .NET languages such as C# and Visual Basic.

• JavaScript: Supports server applications developed in Node.js.

• IPC for C and Java applications

Web MessagingSolace provides several APIs that help developers add HTTP stream-

ing and general messaging capabilities to browser-based and mobile applications with support for transports such as WebSocket, COMET and long polling.

• JavaScript/HTML5: Dynamic and downloadable for running in web browsers and mobile application frameworks such as PhoneGap and PhoneJS.

• Objective C: Enables streaming and general messaging to iOS applications designed for iPhones and iPads.

• ActionScript: Enables streaming and general messaging to applications built with Adobe Flash and Flex.

• Silverlight: Enables streaming and general messaging to applica-tions built using Microsoft Silverlight.

• .NET: Simple interface to messaging services for desktop applica-tions built with .NET languages such as C# and Visual Basic.

Open Wireline ProtocolsMQTT: Solace supports the OASIS MQTT 3.1.1 standard to meet the needs of connected devices and mobile applications that need an efficient way to send and receive information that requires very little bandwidth, client-side processing power and/or bandwidth. The Solace message router works with any third-party MQTT3.1.1 compliant client API, includ-ing open source APIs available via an Eclipse initiative called Paho.

REST: The Solace REST Interface allows HTTP clients to send and receive messages with a Solace message router using HTTP POST requests. This enables REST clients to send messages to and receive messages from any Solace message router clients. To learn more read our REST Integration Concepts Guide.

JMSImplementing JMS requires a broker to manage messages, queues and sessions. Solace’s appliance can route hundreds of thousands of persistent JMS messages per second and many millions of non-persistent JMS messages per second, and can even run both modes on a single appliance at the same time. That means each Solace appliance can replace dozens of software-based JMS brokers.

Accelerate Open Source ESBConfiguring Solace as the underlying transport for higher level open source frameworks gives developers using Apache Camel, UltraESB, WSO2, Mule and jBoss the ability to boost the performance of their applications and enterprise service busses with Solace’s data distribution capabilities. Solace’s API supports Node.js so Node.js applications can use Solace message routers to share information over LANs, WANs, and the internet.

Page 5: Solace Message Routers

Monitoring and ManagementSolace enables customers to monitor and manage their messaging system using CLI or a GUI element manager called SolAdmin, send information to other management systems using Syslog or SNMP, and tie into their existing framework with a man-agement API called Solace Element Management Protocol (SEMP). Best of all, it does all this without hindering performance by intruding on the data path like software-based solutions.

Unrivaled Granularity and Visibility

Solace provides per-client statistics that software can’t provide without significant performance impact, if at all. At the TCP layer this includes data such as round trip time, bytes sent and received, queue depths, and number of retransmits.

At the messaging layer, Solace provides instan-taneous and high water mark data about queue depths, messages transmitted and received per second, and messages discarded due to queue depth problems.

Reliable MessagingReliable messaging establishes a real-time flow of information between many applications and sources of information such as market data feed handlers, sensor readings or emergency alerts. Reliable messaging is appropriate for scenarios where achieving the lowest possible latency is more important than a guarantee that every single message be delivered every time, and for situa-tions where the real-time flow of information is only relevant and wanted by subscribers who are currently connected.

Solace’s message processing is embedded in silicon so there’s no operating system in the datapath. That means there’s no OS interrupts, context switching or data copies between kernel and user space. When messages are received via the I/O card, their topic is passed via high-speed internal fabric to a Topic Routing Blade. That card, which stores up to 10 million subscriptions that can include wildcards, determines the appropriate destinations for each message and directs the I/O card to route them accordingly.

Superior Performance

By handling the routing of messages in purpose-built hardware, each Solace message router can deliver 24 million messages per second and 80 Gbps with very low, predictable latency.

Elimination of Broadcast Storms

Unicast delivery ensures that companies will never experience the expense or embarassment of slowdowns and downtime caused by multicast storms.

More Precise, Secure Delivery

Unlike traditional software solutions, Solace delivers messages using client-specific TCP connections instead of multicast. This enables lower latency and greater predictability without the many operational complexities of multicast. Unicast delivery means every client receives exactly the messages they need, so they don’t waste CPU identifying and deleting unwanted messages. It also means applications only get messages they are authorized to receive and publish on topics they are allowed to publish on, which is critical to the security of the system.

SolAdmin makes it easy to identify and resolve problems anywhere in your system, from the messaging layer to

applications themeselves to the physical network.

Page 6: Solace Message Routers

Solace’s solution stores messages in on-board non-volatile memory instead of persisting them to disk like conventional software-based solutions. If a recipient can’t receive messages, Solace pushes their undeliverable data to disk, which keeps the high speed RAM on the device available for other consumers.

Even when disconnected consumers reconnect, the high capacity of Solace’s appliance lets them “catch up” without impacting other subscribers. Solace appliances are deployed in fully synchronized fault tolerant pairs so if the primary device fails, the backup can take over with no message loss. And if power to both devices fails, all messages and their states are moved to non-volatile flash memory for later recovery.

Two Persistence ModesSolace supports two delivery modes that let archi-tects choose the approach that best meets the goals of each situation.

• Store and Forward Mode

Store-and-forward mode offers sophisticated queuing features and low, consistent latency. Cut-Through Persistence

There are some scenarios where the need for the lowest possible latency trumps the value of sophisticated functionality.

Guaranteed Messaging

Fan-Out PerformanceSolace’s appliance also offers high performance when fanning out guaran-teed messages to many consumers. This chart shows how egress band-width increases when messages of varying sizes are delivered to as many as 50 clients each.

Bulk Rate PerformanceThis chart shows egress bandwidth at a variety of payload sizes, which is important for applications concerned mostly with overall message delivery rate.

In many scenarios every message must be delivered, in sequence, or reported as undelivered if a recipient becomes perma-nently unavailable. This guarantee can be handled by the sending application or messaging middleware, but in either case a copy of each message must be stored (commonly called “persisted”) until successful delivery is confirmed by all intended recipients. Solace’s solution can route up to 450,000 messages per second with lower latency and requires a more compact footprint than software-based systems.

Page 7: Solace Message Routers

The increasing demand for real-time data has compa-nies seeking ways to stream information to users at their desks and on the go. Two developments are paving the way: internet push/streaming technologies such as Comet and WebSocket, and web-centric application frameworks such as HTML5, JavaScript, .Silverlight, Flash and native mobile apps.

Solace’s solution can extend messaging services for internet data streaming, cost-effectively providing ubiquitous reach to applications and users inside the organization and anywhere in the world via the internet and mobile networks/devices. Solace makes messaging over the internet a secure extension of the internal messaging network rather than a custom integration/translation between two disparate technologies.

Web Messaging

Solace helps companies easily deploy Rich Internet

Applications with a turnkey message router that distrib-

utes real-time data over the internet.

• Highest message rate; millions of msgs/sec

• Lowest, most consistent latency

• Lowest TCO thanks to small footprint and simple architec-ture and operations

Solace’s internet data streaming solution reduces cost and complexity by handling internal messaging and internet stream-

ing with one unified platform. Solace is unique in that it offers bi-directional communications with many messaging features and semantics: publish/subscribe, request/reply, fanout, rate control, filtration, and message prioritization.

Solace Streaming with 3rd-Party MessagingBy handling internet fanout in a single appliance that can be quickly and easily dropped in to a datacenter and linked with existing messaging systems, Solace message routers make it easy and cost-effective to add streaming capabilities to any messaging platform.

In such a deployment, Solace’s solution offers high-performance bi-directional web messaging without placing heavy load on the existing message bus. Solace message router handles fanout to many clients so there’s 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.

Solace Streaming with Solace MessagingBy extending internal messaging to include web messaging, com-

panies can have a truly unified messaging platform for all of their information distribution.

• Applications connect using one API whether they’re connecting via a LAN, the internet or mobile device.

• Architects can use a common framework for provisioning, managing, monitoring and securing all components, all without gateways and tiers of infrastructure.

• Administrators have a less complex and more robust environment to monitor, manage and upgrade since there’s no integration between messaging systems.

Solace makes it easy to stream real-time data over the internet using the same API and equipment as your internal messaging.

Page 8: Solace Message Routers

WAN Data DistributionThe amount of data traversing wide area networks (WANs) is surging, in many cases beyond the capacity of available bandwidth, which causes slowdowns and unpredictability. Adding bandwidth is an expensive solution that offers diminishing returns as factors like link latency and applica-tion behavior become gating factors.

Solace integrates sophisticated WAN distribution functional-ity directly into the messaging layer to accelerate data transfer and optimize bandwidth utilization without the cost or complexity of buying and running a dedicated WAN optimization appliance. Such features include:

• WAN Optimized TCP: Solace supports connection-spe-cific TCP semantics (including a sliding TCP window) that greatly enhance behavior over high latency WAN links.

• Hardware Compression: Solace message routers can compress and decompress messages on a per-client basis. Compression ratios vary depending on the nature of the data being shared, but 80% compression is common.

• Client-Configured Rate Limiting: Solace lets clients rate limit the flow of messages they receive (a capability called eliding) if they can’t handle or don’t want every update in a feed.

• Parallel Traffic: Solace enables the simultaneous delivery of many messages and message acknowledgements over multiple TCP connections between Solace appliances.

• Edge Fanout: Solace message routers automatically identify instances where many copies of a single message are required on the other side of a WAN link, then send just one copy over the link and fan it out on the other

Performance AdvantageThe requirements of each WAN use case are unique. Depending on your budget, you may choose a 10 Mbps link or a 100 Mbps link. Between two nearby cities your link may see 30 milliseconds of round-trip latency, while a transoceanic link could add 300 milliseconds. Some applications need to exchange 100 byte messages while others share tens of kilobytes at a time.

Regardless, Solace’s WAN-optimized solution offers superior speed and resilience. Based on the gains we’ve seen real production customers experience, you can expect between 15 and 50 times more throughput than other com-

mercial JMS or MQ products.

This graph shows how Solace can not only give you higher throughput than competitive offer-ings, but actually exceed the band-width of your link.

Solace makes it easy to share and sync information between applications and databases/datagrids across geographically distributed datacenters.

Page 9: Solace Message Routers

IPC / Shared MemoryIn the latency-sensitive scenarios such as high-frequency trading, companies are always looking for techniques that will squeeze latency out of their systems. One such technique is Inter-Process Communications (IPC), a way of sharing data between applications hosted on a single multi-core server.

By eliminating the latency of sending information across the network between computers, Solace supports IPC messaging with average latency under 400 nanoseconds. Trading applications inevitably have to pass information to applications running on other systems to complete transactions or consolidate risk. Since Solace’s API and appliances support many kinds of messaging, applications can share information with co-located and remote applications using the same API.

Other Capabilities

Message CachingIt’s important for some systems to cache the data flowing through them so clients can look up recent data to find the last value or investigate historical instrument activity. Solace offers a caching solution called SolCache that enables in-memory storage and retrieval of data, and is fully integrated with the Solace API. When a client application requests a cached entry for an object from its local SolCache and this object is published from a remote location and not currently cached by the local SolCache, the local SolCache will automatically retrieve it from the remote SolCache and cache it, along with its updates locally, to service subsequent client requests.

SolCache supports user plug-ins that can interpret and process messages before caching them. For example, if a feed handler sends out delta updates to a security or book, a SolCache plug-in could process the updates and overwrite just the last bid or ask fields instead of the entire record, or keep a cumula-tive value for trade volume.

Disaster RecoveryEnsuring business continuity through disasters that impact entire datacenters is a key part of 24x7 cloud systems, and a requirement of regulations like Dodd-Frank in the financial services industry.

Software based messaging solutions rely on the synchronization of SANs via SRDP, and in the event of an outage cold standby systems in a secondary datacenter need to be spun up and must retrieve all messages from the SAN before they can start routing messages. This results in downtime and increases the risk of lost messages.

Solace, on the other hand, continuously replicates messages, queues, current status and configuration data across datacenters in real-time to enable nearly instantaneous recovery.

Page 10: Solace Message Routers

Solace enables application-aware networks

with its message routers that improve the

way information moves between distributed

applications. High-speed, reliable information

sharing is an essential part of virtually all

modern IT initiatives from accelerating legacy

business processes to enabling big data, cloud

computing and the Internet of Things. Solace

message routers unify many kinds of data

movement so companies can efficiently and cost-effectively move all of the information associated with better serving customers and

making smarter decisions. Solace is a leading

provider of application-aware networking

equipment, with a rapidly growing customer

base that spans all major industries. To learn

more visit http://solacesystems.com.

Key Customers

With its turnkey message router, Solace provides the

easiest, highest-performance, lowest TCO way of distrib-

uting information within datacenters, over wide area

networks and via web and mobile apps.

To learn more visit our web site at

http://solacesystems.com or

call us at +1 613 271 1010.

Concluding Summary