multiple threads on single tcp connection?

Dec 4, 2013 at 3:47 PM
Edited Dec 4, 2013 at 3:48 PM
A question on scaling:

Our implementation receives front end calls, and sends CI command to HSM for PIN translation under ZPK. It is working very well on single sequential requests.

Now we will have higher volume of requests, and asking guidance on building the scalability from messages arriving from a thread pool. Currently we use a static WorkerClient with MessageArrived delegate event handler.

As the responses from HSM do not carry any source request reference number, how is it possible to tie back the CJ response to the original request?

In light of this, we see these available options:
1) open new tcp connection for each front end call, or

2) keep open a single tcp connection
  • by using a synchronous blocking receive mode, or
  • with async delegate by building an internal queueing mechanism
I'd be connecting to an RG7900 in production, but simply unsure of its per translation latency and/or tcp client connection scalability (i see the simulator is set to 5 clients by default).

Many Thanks
Tozzi
Dec 4, 2013 at 4:22 PM
After brief investigation, it seems the header can be used to track requests and match up with responses?
Dec 19, 2013 at 5:11 AM
Yes, resolved. Working smoothly.
Marked as answer by tozzi21 on 12/20/2013 at 9:47 AM