This is part 9 in a 10 part series: 10 reasons for the growth in middleware appliances. The series summarizes what we’ve learned from our clients about what they value in appliances and why they selected Solace.
In enterprise computing it could also be a slogan for implementing truly global real time systems. Enabling real time access to all of your corporate information across the planet is a great utopian ideal, but there is a big gap when you get beyond cheap 1 or 10 Gigabit Ethernet LANs into the limited bandwidth and higher latencies of metro- or wide-area networks. Today, you can “think globally” about your requirements if you want to, but the cost and performance constraints of the WAN mean most applications can realistically only “act locally”.
The 9th reason that our customers choose Solace is because we let applications think globally and act globally. By highly optimizing the WAN link, we release the limitations of the WAN as the weakest link in the application design. As with reason 8, we’ll start by highlighting what most companies are dealing with today.
Most Messaging Products are Not Very WAN Savvy
Most messaging middleware products treat a TCP connection as an opaque, undifferentiated service that the network layer supplies. There is very little difference in how most messaging products behave if the network layer is providing 10 Gb of cheap bandwidth and microsecond latencies, or 10 Mbps of expensive bandwidth with 100+ milliseconds of latency.
Most commonly, WAN applications share important data that relies on guaranteed messaging with “in order” delivery of messages for a given queue or topic. The way most products assure order is to wait for the first message to be delivered before sending the second, and so on . This approach creates some throughput challenges on WANs because latency can be very high.
For example, if latency is 100 milliseconds round trip, and messages are always sent serially, one at a time, you would expect no more than 10 messages to be sent and acknowledged in a second. It doesn’t matter if you double the WAN bandwidth, or cut message sizes in half, the round trip latency, and the requirement for ordering become the limiting factor affecting throughput.
The good news is, most commercial guaranteed messaging protocols (JMS or MQ) are smarter than that. When there are many messages queued and waiting to be sent, most software products will batch multiple messages (still in order) and send them as one trip across the network. This allows their effective throughput to exceed strictly serial limits, since many messages are carried per round trip.
The bad news is, the optimization still only gets you so far, usually topping out at throughputs that represent a small fraction of the available WAN bandwidth. Each batched send still waits for delivery and confirmations to complete before sending the next batch. As an indication of effectiveness, a connection on a typical commercial JMS product will use only 5-10% or less of the available bandwidth on a high latency 20-50 Mbps link, even if the data publish rates are much higher.
Solace Appliances are Uber WAN Aware
Solace’s messaging appliances have been optimized to be highly efficient over the WAN, virtually eliminating the limits on today’s global distributed messaging. A quick summary of Solace’s unique advantages:
- WAN optimized TCP – The Solace appliance allows connection-specific TCP semantics so high latency WAN applications can behave differently than (get ready alliteration fans) low latency LAN links. Over WAN links, Solace streams data through a sliding TCP window which allows messages to be continuously streamed with delivery confirmations being streamed in the other direction. This optimization takes the first steps in overcoming the WAN throughput problems of most commercial messaging products and allows far greater use of available bandwidth.
- Hardware compression – Solace appliances also perform compression in, which means they can shrink the size of the data on the wire by 60-80% for most applications. This allows the effective throughput of the WAN link to 3X-5X greater than the data actually carried. In many cases, the applications can actually exchange more than the data rate of the WAN link.
- Multiple network links – By opening up multiple TCP connections between Solace appliances, traffic can be parallelized, which further increases throughput. Solace takes care of balancing traffic between the links so that messages are still sent and received in order while overall WAN traffic is balanced and throughput is optimized.
The combination of optimizing TCP, adding compression, and using multiple links dramatically improves throughput of messaging over a bandwidth constrained WAN link. In addition to these general improvements, here’s a further optimization for applications requiring data fanout:
- Smart WAN fanout – If a message has multiple subscribers across the WAN link, Solace can send it just once over the WAN link, and fan it out many times at the remote location. That could be for database updates from Singapore that are received by 20 back end systems in San Francisco, or 100 traders in Tokyo receiving market data from a feed in London. In these two examples, the data rate savings can be an additional 20 or 100 to one in terms of WAN bandwidth consumed.
If you’ve ever deployed applications over the WAN, you know that the performance requirements of each use case are unique. Depending on your budget, you may choose a 10 Mbps link vs a 100 Mbps link (or more). Between two nearby cities, your link may only introduce 30 milliseconds of round-trip latency, while a pan global link could add 300 milliseconds. Some applications need to exchange messages that are 100 bytes in size, and others may be sharing 10s of kilobytes at a time. How your applications will behave is dependent on the combination of these major factors and many more minor ones.
But one thing you can count on is that Solace’s optimized WAN solution will leave your current software middleware’s WAN performance in the dust. You can expect between 15 and 50 times more application throughput vs typical commercial JMS or MQ products. These are not theoretical numbers, we have helped many customers achieve these results in their production WANs
What Could You Do with 50X More WAN Throughput?
The fact that JMS or MQ software products struggle with limited data volumes over a WAN causes application designers to think small when it comes to sharing and syncing data globally. The rate constraint and high latencies end up limiting their thinking about what is possible, ultimately leading them to one of two choices: live with lousy throughput, or write complex applications that have to work around these limits with batching techniques, horizontal scaling, or worse.
What kinds of applications would be possible if the messaging infrastructure could automatically scale, often beyond the theoretical maximum of the WAN link? And if you then buy more bandwidth, you actually get more throughput with no changes to the application – the messaging layer takes care of it all for you.
WANagement and WANitoring (groan)
Of course, you still get all the management and monitoring visibility unique to our hardware platform (covered in detail in reason 6).This topic is especially important in WAN communications because the queuing of messages is so much more common over the WAN. In the LAN, receiving applications don’t usually fall being behind the message stream unless the application is running slowly, is disconnected or is otherwise unavailable. On the WAN, many more variables can cause messages to back up temporarily, most commonly inconsistent behavior of the WAN link, or temporary volume spikes that exceed its capacity. Solace’s unique connection-level visibility into each endpoint’s behavior and queues gives operations teams far greater visibility than current popular software-based products.
Now You Can Act Globally
So that’s reason 9 why companies choose to buy Solace. If you are synchronizing databases or data grids, fanning out content to remote users, or fanning in data from something like a global sensor network, Solace literally redefines what is possible over the WAN. For many customers Solace allows them, for the first time, to deploy WAN-based applications with expectation that the infrastructure can keep up with real time data change rates (without breaking the bank in bandwidth fees).