How scalable is Lightstreamer Server?
Lightstreamer Server is a real-time system implemented in Java. In order to guarantee the maximum level of performance, the Server has been developed as a stand-alone process which does not rely on an underlying web server or application server. In this way it is possible to have direct control over the TCP/IP layer of the system and over the threading model of the application. True push solutions need to maintain at least one open TCP socket for each connected client. Some web/application servers have been extended to act as streaming engines, but their traditional architecture based on the one-thread-per-connection model makes scalability pretty impossible to tens of thousands of users. Lightstreamer adopts a staged event-driven architecture instead of a thread-based one, making it possible to decouple the number of connections that the Server can sustain from the number of threads that are employed. The Java NIO classes are fully exploited to implement this model for both HTTP and H