juanchoc
August 2nd, 2009, 11:33 PM
Hello everyone!
I'm looking for some tips on my next project.
What i want to do is a real-time application that connects to a market data feed, and receives real-time data which comes at really large volume and speed, and then relays that data to the corresponding clients.
Data-feed ---> Relay Server ---> Clients
The data-feed data comes through events provided by a custom API, and im talking of about 200-500 events per second.
The main problem I'm facing is the fast relay of the data provided by those events to the corresponding clients (among the data provided in each event, there is a ID which identifies the client that requested it).
I've seen some nice multi-thread UDP client/server libraries on codeproject.com, which may be a good starting point for the communication part.
As to the data reception and handling from the events, i think i should do something like ataching a thread from a thread pool to each event.
The application will be run with .NET 3.0, and the Server-Client communication is over a LAN.
So, the question is, does anyone have any tip or ideas which may help?
I'll be really thankful for any info/ideas!
Thanks in advance,
JCC
I'm looking for some tips on my next project.
What i want to do is a real-time application that connects to a market data feed, and receives real-time data which comes at really large volume and speed, and then relays that data to the corresponding clients.
Data-feed ---> Relay Server ---> Clients
The data-feed data comes through events provided by a custom API, and im talking of about 200-500 events per second.
The main problem I'm facing is the fast relay of the data provided by those events to the corresponding clients (among the data provided in each event, there is a ID which identifies the client that requested it).
I've seen some nice multi-thread UDP client/server libraries on codeproject.com, which may be a good starting point for the communication part.
As to the data reception and handling from the events, i think i should do something like ataching a thread from a thread pool to each event.
The application will be run with .NET 3.0, and the Server-Client communication is over a LAN.
So, the question is, does anyone have any tip or ideas which may help?
I'll be really thankful for any info/ideas!
Thanks in advance,
JCC