Increasing Initialization Speed with Solace Web Streaming

The Solace Web Streaming API supports the WebSocket Protocol as a preferred transport. I have been playing around with using the Solace streaming API in Node.js as well as on my laptop, iPad, and Android phone.

In each case, the initialization time for apps is visibly faster when using a browser that supports WebSocket. I wrote a simple javascript app to display the init time, the protocols used, as well as continuously monitor the round trip time for the connection. The plotting of the  round trip time (RTT) uses SmoothieCharts which I think has a nice look and feel.


Why is the init time faster?

The Solace javascript client library always tries the WS_BINARY WebSocket transport first before falling back to one of several other methods for providing streaming data (such as polling with XMLHttpRequest). WebSocket supports bi-directional sending and receiving of streaming binary data without having to encode it as text first.… Read the rest

Solace Web Streaming Demo

hans-web-streaming-demo-drawingIt seems that the classic pub/sub demo always includes some streaming financial market data. With that in mind I set out to create a 3 minute video that shows how easy it is to build pub/sub apps using the Solace Web Streaming API.

The server-side of the demo uses an early access version of the Solace Node.js module. The client side is written with the generally available JavaScript Solace Web Streaming client libraries running on an Android  mobile phone. Communications between the client and server is all via HTTP Streaming through a  Solace Messaging Appliance.

If you want to see the text, the video is best viewed full screen in 720p HD quality.  I hope you enjoy these quick videos. Email us at if you have ideas for future video demos or technical tutorials that you would like to see.… Read the rest

Why I’m Hooked on Node.js

node.jsFull disclosure up front, I am NOT a rock star developer. The biggest programs I have ever written were video games, and only because I was highly motivated to use the resulting binary. Yes, binary, this was the old {vi foo.c, make, execute, debug} days and I still find myself most comfortable as a programmer in similar environments. I still use the HJKL keys in vim and I change my console terminal preferences to be fixed font green on black for VT100 nostalgia’s sake. I also program alone so I have no need for distributed source code control system until I am done and I want to share my work. I get lost in IDEs like Eclipse and Visual Studio and they make me feel inadequate very quickly. Why on earth do I need to create a project and run a wizard in order to write HelloWorld.js, or in my case AsyncPubSub.js?… Read the rest

Reinventing Internet Data Streaming

We are very pleased to announce a new capability in the Solace product lineup. For many years now, we have dedicated our company to reshaping how messaging enables distributed computing for enterprise applications. Today, we announced that we’re taking our technology beyond the boundaries of the corporate network and into the wild world of the internet.

We’re not the first kids on the block to take on streaming real-time data to rich internet applications (RIAs), but we believe we’ve done it the best. And not by a little bit, but by a country mile. The problem of filtering and fanning out data to lots and lots of users is a tailor fit for the technology we’ve built over the past 8 years. We’ve already solved this problem for intranets and WANs, and by adding internet protocols, and some security and management to account for the internet part of the equation, we bring a new level of performance, simplicity and reliability never before seen in this market.… Read the rest