Hello,

Are you using the MERGE subscription mode right?

The problem is that since the updates are all published on the same item, Lightstreamer merges the updates if needed:

Code:
08.May.07 09:02:05,934 <TRACE> INCOMING DATA for rates --> {bidValue=0.07943651574153077, sellCCY=USD, bidCCY=EUR, sellValue=0.19836981819406774}
08.May.07 09:02:05,935 <TRACE> INCOMING DATA for rates --> {bidValue=0.04185744998798879, sellCCY=JPY, bidCCY=EUR, sellValue=0.002155323147410959}
08.May.07 09:02:05,936 <TRACE> INCOMING DATA for rates --> {bidValue=0.9033005599346077, sellCCY=USD, bidCCY=JPY, sellValue=0.3281485803285823}
08.May.07 09:02:05,937 <TRACE> INCOMING DATA for rates --> {bidValue=0.947976333651295, sellCCY=GBP, bidCCY=EUR, sellValue=0.38439026792729647}
08.May.07 09:02:06,044 <TRACE> INCOMING DATA for rates --> {bidValue=0.9040453255654483, sellCCY=USD, bidCCY=EUR, sellValue=0.9458336664422791}
08.May.07 09:02:06,045 <TRACE> INCOMING DATA for rates --> {bidValue=0.9708380297991672, sellCCY=GBP, bidCCY=EUR, sellValue=0.215475738803115}
08.May.07 09:02:06,134 <TRACE> Pumping event in session S1321751661N1: 1,1,1||0.9708380297991672||0.215475738803115
In the example 6 updates arrives to the server but only one is forwarded to the clients.

If yoo take a look at the timings of the "Pumping in Session" messages you will see a 200ms pattern:

09:02:05,537
09:02:05,734
09:02:05,934
09:02:06,134
and so on...

Those 200ms are set in the Lightstreamer_conf.xml file:
Code xml:
  1.  <max_delay_millis>200</max_delay_millis>

What appens is that Lightstreamer is enabled to send just one packet each 200ms (this is a session related delay) unless there is too much data to be sent in one single packet (due to frequency limits bandwidth limits etc this is just a simple explanation of the delivering algorithm). Btw since you publish every update to the same item, after 200ms from the last "Pumping event in session" - from Lightstreamer point of view - there is only one relevant update that must be sent (the latest).


Quote Originally Posted by churrusco
So I guess I should create a channel per currency pair.
This is indeed a good idea.

Quote Originally Posted by churrusco
does this mean more sockets open?
The socket is always the same as Lightstreamer protocol take care of handling more items on the same data flow

Quote Originally Posted by churrusco
does this mean more bandwidth usage?
Obviously more bandwidth will be used if more updates reach the client, btw you can limit the bandwidth both client and server side.