Batch size limit on ETA API

Hi,

I'm using ETA API version 1.0.8 in Linux and making request in batch mode.

Is there any limit on the number of symbols that can be requested in the batch mode ?

Does the request need to be throttled ? if yes, how ?

Are there any recommended best practices in pacing the batch request to ADS ?

Thanks

Best Answer

  • Jirapongse
    Answer ✓

    In API, batch is an array in the element entry. Its limitation is defined by the limitation of array and element entry.

    An RsslArray currently has a maximum entry count of 65,535. This type has an approximate maximum encoded length of 4 gigabytes but may be limited to 65,535 bytes if housed inside of a container entry

    Therefore, it can have a maximum of 65535 items and its array size is limited to 65535 bytes because it is in the element entry.

    To use batch request in
    ETA, you need to make sure that the server supports batch request by verifying
    the value of SupportBatchRequestselement entry in the
    login response. The application can use batch request only when the server
    supports it.

    Regarding throttle, if
    the application requests a lot of items, the requests should be throttled to
    avoid flooding the network and overloading the connection. Moreover, the
    throttle should be configurable so its value can be changed according to the
    network and performance of the application.

    RFA (Robust Foundation
    API) the high level API that uses ETA has two request throttle implementations.
    The first, a timer throttle, sends requests to the infrastructure at a fixed
    rate. The second, a count throttle, limits the maximum number of pending requests
    that have not yet received a refresh. You can apply these mechanisms in your ETA
    application. For more information, please refer to RFA Developer Guide and RFA
    Configuration Guide
    at this link. Please search for throttle.