question

Upvotes
Accepted

What is the best threading model for 3k symbol subscription + low latency

Hi,


We have a single-threaded feed application (same as rmdstestclient) that is currently experiencing huge latency when subscribing to ~3k Shenzhen symbols.


We were looking into the possibility that our app is a slow consumer, and that we may need to perform some changes on our end.


We believe that the single-threaded model should be ok for the said amount of subscriptions, but is there any recommendation on what threading model should be used per market?


Is there any difference between the Shenzhen market and the other markets in terms of:

  • Threading configuration required?
  • Volume of Data?
  • Manner by which the data was sent?


Thank you very much!

treprfarfa-apic++rmds-test-clientmulti-threading32-bit
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

@exchange-notifications

Thank you for your participation in the forum. Are any of the replies below satisfactory in resolving your query? If yes please click the 'Accept' text next to the reply that best answers your question. This will guide all community members who have a similar question. Otherwise please post again offering further insight into your question.

Thanks,

-AHS

Please be informed that a reply has been verified as correct in answering the question, and has been marked as such.
Thanks,
AHS

1 Answer

· Write an Answer
Upvotes
Accepted
25.3k 87 12 25

Hi @exchange-notifications

The RFA APIs are content-neutral and we don't generally recommend one threading model over another for specific exchanges or asset types etc.

It would be difficult for us to recommend a specific threading configuration without performing extensive testing using your 3k symbols, hardware and network, what processing you do with the payload once received etc - as all these factors can affect the performance and would be outside the scope of this Q&A Forum.

Generally speaking the threadModel : Single is normally recommended for lower latency - vs Dual for higher throughput.

  • Do you see the same latency issue when testing with rmdstestclient?
  • Does the latency with your app gradually increase as you run the application for longer? i.e. does it start off ok - but as time progresses, the latency increases?
  • What kind of latency figures are you seeing? Do these change during the trading day?
  • What are the typical update rates you are seeing?
  • Have you tried testing with Dual threadmodel? What impact do you see on latency?
  • Are your ADH and ADS configured for low latency? If not, I would recommend raising a MyRefinitiv support ticket to obtain some assistance in this area. I did find a TREP Tuning Guide on My.Refinitiv which you may find useful.



icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.