question

Upvotes
Accepted
5 1 2 3

RFA batch request

If RFA sends batch request to the ADS. Will ADS respond back with a batch response?

My Question is :

What is the ADS response for a batch request?

if it is a batch request, Will RFA receive a batch response or individual responses from ADS?

treprfarfa-api
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.

Monitored by @moragodkrit

Are any of the replies below satisfactory in resolving your query?

If yes please click the 'Accept' text next to the most appropriate reply. This will guide all community members who have a similar question.

Otherwise please post again offering further insight into your question.

Thanks, AHS

Upvote
Accepted
25.3k 87 12 25

@Haribabu_annem

With regards to your points about Batched responses, suppose you make a Batch request for 100 items, as mentioned above RFA operates on the principal of creating unique event streams for each instrument requested. This makes sense because:

  1. Instruments can update totally independently of each other
  2. Instruments can update different rates to each other e.g. a highly traded instrument could update several times a second whereas another instrument may only update every few minutes

In view of the above it would not really make sense for the server to send batch responses when dealing with real time financial data.

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.

Whatever you said is valid and makes sense if it is a streaming request and receiving subsequent updates for a list of given instrument.


suppose you make non-streaming batch request for 100 items to ADS. Will ADS give back one singe batch response of 100 items? In this case it is non streaming request, so it doesn't need updates and the data stream will be closed after the request is fulfilled.

No, making a batch request for 100 snapshot items will still result in 100 individual snapshot responses. This is because RFA operates on the concept of unique streams for each instrument and whether the request is streaming or snapshot is merely the interaction type specified on the request.

Implementing Batch responses would require some means of decoding the individual responses from a single event/message payload - An additional complication.

Also, some items may be rejected and some could be served quicker than others because they are already in the ADS cache.

Upvotes
7.6k 15 6 9

@Haribabu_annem

RFA will receive an individual responses from ADS.

Basically Batch requests can improve performance by reducing the number of messages sent from the consumer application. So an application can specify interest in multiple items via an item name list in a single request message. As a result of this message, an RFA consumer will receive a response from RFA comprised of multiple, fully-functional, independent item streams—one for each item specified in the item name list of the Batch request message.

For RFA C++, you can find the example codes from StarterConsumer_BatchView. The example create data structure(list of item Info etc) to keep item name and handle and then check the response from ADS to find the handle and add individual handle for each item to the data structure.


batchrequest.png (53.7 KiB)
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.

So can we conclude that from RFA8 documentatin or from your response the following statements:

1. ADS will not support batching features.
2. Even though we give batch request to ADS, it gives you back responses for each and every item individually , it will never give you batch response.

1. Yes, currently, ADS supports batch request. It doesn't support batch response.

2. Correct. RFA will receive an individual response (stream) from ADS for each item.

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.