Thursday, October 30, 2014

Authentication & Authorization With Lightstreamer

This short article will guide you through authentication and authorization in Lightstreamer and will introduce a live example with full source code.


Most, if not all, Lightstreamer applications will, at some point, require some sort of authentication mechanism to validate their users. Moreover, there usually is an authentication mechanism already in place when Lightstreamer is introduced in the system.

So, let's see how to introduce Lightstreamer in an environment where Authentication is already handled by a Web/Application server.

Thursday, October 16, 2014

Protecting Lightstreamer Against POODLE (SSLv3)

Google's researchers recently discovered a new vulnerability affecting the SSL protocol. POODLE, which stands for Padding Oracle On Downgraded Legacy Encryption, allows an attacker (a man-in-the-middle) to decrypt ciphertext using a padding oracle side-channel attack. Full details are available in this Google paper.

POODLE affects older standards of encryption, specifically Secure Socket Layer (SSL) version 3.0. It does not affect Transport Layer Security (TLS), the newer encryption mechanism.

Lightstreamer relies on the underlying Java Virtual Machine (JVM) for the implementation of the SSL and TLS encryption and cipher suites. While waiting for the availability of a JVM upgrades that avoids SSL 3.0 by default, we recommend configuring Lightstreamer Server to prevent the use of SSL 3.0 for all HTTPS and WSS connections.

Thursday, September 25, 2014

Meet our Customers: Finanex

A short interview with Dejan Milosevic, CTO at Finanex.

Let’s talk about your organization. What is your core business?

"Finanex is a financial services company that allows individual investors to trade on an equal basis, without facing dealers as counterparts through its TargetTrade platform, which will be launched soon".

 Could you let us know any further information?

"The company intends to license its TargetTrade trading platform to white labels".

Tuesday, July 22, 2014

Lightstreamer 5.1.2 Released

A maintenance release of Lightstreamer is now publicly available for download. It contains several fixes and improvements.

For paid editions, no license updates are necessary to upgrade, provided that a license for server 5.1 and JS client 6.1 is already in use and the maintenance contract is active.

Please contact if you have any questions.

Below is a list of the changed components.

Friday, July 18, 2014

Developing Swift Apps on iOS with Lightstreamer

Unless you have been living under a rock in the last month or so, you should know Apple introduced a new programming language during WWDC 2014. Like a typical Steve Jobs' "One more thing" move, Craig Federighi introduced Swift at the very end of the keynote. The intention of the new language is to leave behind some of the C legacy that burdens Objective-C.

So far, Swift has been welcomed by developers and has generated a lot of articles in popular platforms like Stack Overflow. The aim of this article is to contribute to the growing popularity of the language with some sample code to connect, subscribe and send messages to Lightstreamer. 

The code presented here has been written and tested with Xcode 6.0 beta3 and the Lightstreamer iOS client 1.3 (due to be released shortly), but it is compatible with client version 1.2.x (released with Server 5.x).

If you prefer a complete example, in place of a step by step tutorial, take a look at the iOS Swift Chat demo. More informations at the end of the article.

Thursday, July 17, 2014

Exploiting Static Exception Checking in Asynchronous Java Code

Hierarchical exception handling and static exception checking are among the most significant features offered by the Java language; however, their support is limited to procedural code and can only be exploited in hierarchies of function calls. So, there is nothing similar to assist us when it comes to event-driven programming or asynchronous programming, where the work is scattered among many functions that are independent from one another. This is particularly frustrating in some architectures, where the logical design is strictly hierarchical and the control flow is actually sequential, but asynchronous API calls are involved.
The present article deals with the latter case; we show how, by writing code that follows a specific pattern and leans on a suitable support library, the benefits of hierarchical exception handling and static exception checking can be achieved. This technique was applied in some parts of Lightstreamer Server with proficiency.

Monday, July 14, 2014

Meet our Customers:

We talked with Fabrizio Capobianco, Founder and CEO of, the company behind an innovative Lightstreamer-powered second screen application. apps allow people to talk with friends while watching sports events like FIFA World Cup on TV. We recently discussed about TOK apps here, and showed how they work here.

Fabrizio is a true industry veteran and serial entrepreneur. As an advisory board member at M31 USA and Mind the Bridge Foundation, he is helping Italian tech startups to succeed in Silicon Valley. In 1995 he launched and lead to success Internet Graffiti, the first Italian Web Company, developing many Internet projects and web sites as CTO. Besides, Fabrizio is in charge as President and Chairman of Funambol, which he founded in 2003 and guided to be one of the leading personal cloud companies in the world. He cooperated with Wireless magazine in writing the "Wireless Valley" column, among many other things.

Thursday, June 26, 2014

Enjoying FIFA World Cup with Simple, yet Powerful Technologies

As expected, this edition of the FIFA World Cup hasn't spared emotions for soccer fans so far. We watched epic challenges. We have been surprised by some excellent defeats (Spain, England, Italy and more). We discovered Suarez appetite for glory and Van Persie's abilities for a new career in olympic diving.
But the real big thing of this edition is how technologies are helping making the World Cup even more fair, competitive and enjoyable.

The Goal-Line technology has been deployed and is giving a valuable contribution determining when the ball has completely crossed the goal line with the assistance of electronic devices and at the same time assisting the referee in awarding a goal or not.  Clubs and national teams are already using Big Data and tracking technologies that can measure the tendencies of players in very specific situations, helping coaches taking better decisions on team strategy and players' positions.

Thursday, June 12, 2014

Follow Your Favourite #WorldCup2014 Team With Lightstreamer-Powered Apps

The waiting is over! Starting from today, 24 national teams will try to enter the soccer olympus conquering the World Cup 2014 in Brazil. Ready to grab a fresh beer or soda and enjoy the matches in the living room with your friends? Now you can support your team even if your friends are away, or simply follow the real-time data and statistics feed of the matches on your iOS/Android mobile phone if you can't see the match from the couch at home., an innovative second screen technologies company, just launched a set of innovative Lightstreamer-powered mobile and tablet apps that allows to talk - not write - with up to 4 friends, while watching your national team during the World Cup games.

Tuesday, June 3, 2014

Meet our Partners: Blue Turtle

A short interview with Tommy Erlank, General Manager (Enterprise Application Management) at Blue
Turtle, a South African IT and advisory consulting company which provides solutions for optimising, enhancing and leveraging existing IT investment.

Let’s talk about your organization. What is your core business?

"Established in 2003, Blue Turtle Technologies is a South African company which provides solutions for optimising, enhancing and leveraging existing IT investment, and supporting the cost effective delivery of new technology initiatives. We deliver solutions for the effective management of IT infrastructures employing innovative software products, backed by ‘best-practice’ implementation services".

 Could you let us know any further information?
"Blue Turtle currently serves more than 500 customers with software products and services throughout Southern Africa".

Monday, March 10, 2014

Updates to Lightstreamer JavaScript, iOS, and OS X Client Libs

A new release of the stable version of Lightstreamer is now available, containing updates to:
  • JavaScript client library
  • iOS client library
  • OS X client library

Thursday, February 20, 2014

How NASA Is Using Lightstreamer

Collaboration between Lightstreamer and NASA dates back to 2010. NASA chose Lightstreamer as the push streaming engine for delivering real-time telemetry data from the International Space Station to web and mobile applications.

Several resources, including articles and public apps, have been made available across the years on the ISS Live project. I would like to collect and resume some of those resources here, to keep a clear snapshot of how Lightstreamer is being used by NASA. (Obviously, only public information will be reported and nothing else will be disclosed).


Wednesday, February 19, 2014

Lightstreamer 6.0 Preview Release Available

We are very pleased to announce the early public availability of the next release of Lightstreamer Colosseo: version 6.0.

Lightstreamer now includes support for Mobile Push Notifications (MPN). Clients have new APIs to activate special subscriptions whose updates are delivered through push notifications. New MPN subscriptions are persistent, compatible with existing data adapters, and require only one call to be activated. Now, just one line of code separates your app from full push notification support!

This preview release includes MPN support for iOS and OS X SDKs, based on Apple Push Notification service (APNs). Support for more platforms will be rolled out progressively.

Version 6.0 provides also a new Monitoring Dashboard with a full JMX Tree, better control on remote adapter initialization and logging, new clearSnapshot API on the adapter SDK, as well as improved performance, scalability, and security.

Friday, December 13, 2013

HTML5DevConf: More Than Just WebSockets for Real-Time Multiplayer Games and Collaboration

We are very excited to report that Lightstreamer exhibited at the prestigious HTML5 Developers Conference held on October 22-23, 2013 at the Moscone Center in San Francisco, CA. HTML5DevConf is one of the largest, best attended software developers conference in the world. The event also included three days of training sessions, all of which sold out weeks in advance.

Alessandro Alinone, Lightstreamer's Co-Founder and CTO, held a well attended session titled "More Than Just WebSockets for Real-Time Multiplayer Games and Collaboration". Alessandro explained and demonstrated how some advanced optimization techniques, originally developed for the financial services industry in the last decade, can be applied to HTML5 games and collaboration systems.

>> Watch the video recording of Alessandro's session and see the slide deck below

Friday, November 29, 2013

Yet Another Integration: AngularJS

I had some spare time, so I decided to put together some code to make a PoC integration between our Lightstreamer JavaScript client library and Google's AngularJS.

The integration went smoothly: simply prepare the view using AngularJS syntax, then populate the associated model object with the data flowing in from the Lightstreamer subscription. At each update, ask AngularJS to refresh the view and you're done!

Let me show it to you right here through a simple recipe.

Wednesday, November 27, 2013

Visual Layer of the JavaScript Client Library Is Now Open Source

A few weeks ago, we released part of our Lightstreamer JavaScript Client library as an open source project on GitHub (actually, four projects).

The initial idea was to release our visual layer as an open source addon to our client library. It was 2011 and at that time the latest release of our client library was still version 5. Unfortunately, the visual layer of that lib was quite entangled with the subscription layer, so that such separation was unlikely. We also had in mind to completely revise our client APIs and planned to full embrace the AMD philosophy. So, we decided to wait. Fast-forward to 2012, with client version 6 we finally had a modular library and an independent visual layer, and the separation was finally possible. Other priorities took our time though, so the release had to wait until last summer.

Before we could release the visual layer, we had to release a common layer of utilities we shared across our whole library. The idea of a second project, to host the various utilities, was born... Following closer, came the idea to isolate the logging infrastructure in its own project and to also publish our testing framework. In the end, we had 4 projects to publish.

Tuesday, October 15, 2013

Meet our Customers: Piriform

A short interview with Rafal Girycki, Senior Developer and Team/Project Leader at Piriform, a global provider of award-winning software that makes computer run 'Clean, Safe and Fast'.

Let’s talk about your organization. What is your core business?

"Our company is a global provider of software that makes computers run ‘Clean, Safe and Fast’. Along with our flagship product CCleaner, which is now available both for Mac and PC in different versions for both home and business/enterprise users, Piriform also developed Defraggler, a user-friendly tool for hard drives defragmentation, Recuva, a utility for lost files recovery, and Speccy, an advanced system information tool.

Agomo is the first cloud-based PC maintenance solution developed by Piriform. It brings CCleaner, Defraggler and other useful tools to the cloud".

 Could you let us know any further information?

"Piriform is a privately owned UK software house, with offices in London, New York and Eastern Europe. At Piriform we create award-winning software to make computers faster, more secure and with increased privacy. Our software is used and trusted by millions, in 195 countries. CCleaner alone has been installed more than 1 Billion times onto nearly 25% of all the PCs in the world, and has been chosen by over 1 million business customers".

Monday, October 7, 2013

Optimizing Multiplayer 3D Game Synchronization Over the Web

A few months ago, I stumbled upon an interesting article by Eric Li titled "Optimizing WebSockets Bandwidth" [1]. Eric mentions how the advent of WebSockets has made it easier to develop HTML5 multiplayer games. But delivering the positional and rotational data for each player in a 3D game can consume a lot of bandwidth. Eric does some calculations and illustrates several optimizations to expose how much bandwidth might be needed.

Table of Contents
After reading the article, I was thrilled because I have been dealing with bandwidth optimization of real-time data streaming for thirteen years now. I am the CTO and co-founder of Lightstreamer, a Real-Time Web Server that we originally created for the financial industry to deliver real-time stock prices. Well, many of the optimization algorithms created for online financial trading can be applied, unchanged, to online gaming. And we have worked with many banks across the world for several years to optimize bandwidth and reduce latency. So, I considered Eric's article as a challenge to demonstrate how well the algorithms we have developed in the last decade can give immediate benefit to multiplayer games, including MMOs, MMORPGs, and immersive 3D virtual worlds. Coming from the sector of real-time financial data, I am not a game development expert but I think that "cross-fertilization" between finance and gaming could give some unexpected benefits.

We decided to work on an online demo of a simple multiplayer 3D world, using Lightstreamer for the real-time synchronization, while showing the actual bandwidth used. We added several buttons, sliders, and controls to allow tweaking the parameters of the scenario and simulate any flavor of data delivery.

The final result is a toolkit that can be exploited to experiment and tune different game communication scenarios. The full source code of the demo is freely available on GitHub.

In this article, I will take you through the demo, showing you how to use it, explaining what's under the hood, and illustrating some of the advanced techniques employed. If you are interested to know how we optimized the network transport, you can skip to the section "Techniques to Employ in the Real-Time Web Stack" below.

Tuesday, September 3, 2013

Meet our Partners: CoralTree

A short interview with Kevin Turner, Co-Founder and Technical Director at CoralTree, a leading provider of innovative BSS, CRM and revenue management solutions. CoralTree is the company behind the Renaissance Framework, an open source, web-based interface which can be added over an old fashioned ‘green screen’ software, leveraging the latest technologies including Lightstreamer.

Let’s talk about your organization. What is your core business?

"CoralTree Systems is a leading provider of BSS solutions, which include CRM, order management, billing and inventory management software for the communications industry. We strive to offer cost-cutting, robust and reliable solutions and related services, supported by a flexible and quality-oriented company".

 Could you let us know any further information?

"CoralTree Systems is a UK-based company established in 2004. Our flagship products include daVinci, a scalable and customisable end-to-end solution that deliver sales and marketing, customer management, order management, inventory management and revenue management capabilities. daVinci BSS can be deployed in a variety of delivery models, including license, managed services, and SaaS".

Tuesday, July 30, 2013

'Hello bank!' by Cortal Consors: Innovative Online Workshops

We are really excited to announce that USEEDS°, a German B2B consultancy firm for user-centric design of interactive applications and associated services, and E27, an innovative agency focused on verticals as different as web, graphic, and product design, opted for Lightstreamer to be rolled out as the streaming engine at the heart of an online workshop environment developed for 'Hello bank!’ by CortalConsors, a subsidiary of BNP Paribas focused on private investment and online trading.

USEEDS° has been invited to provide its expertise as part of the Cortal Consors' effort in repositioning itself as a financial institution. Hello bank! represents a new approach to banking, designed to meet the needs of European clients for a faster, easier, always-on mobile and Internet banking service. Launched on May 2013 in Belgium and Germany and soon also in France and Italy, Hello bank! will aim to attract 1.4 million clients within five years.