We are in favor of choosing the RFA JAVA API. Is the API efficiently built in terms of garbage it generates? Since our application is latency sensitive, we expect no major GC cycles due to garbage from RFA JAVA API.
Also, Is there a recommended API to choose between RFA JAVA and RFA C++ APIs due to performance benefits.?
Can you please have your opinion?
You may find the following document on MyRefinitiv useful
It contains comparative performance figures for RFA versions 7.5 and should provide an idea of the differences in performance between RFA Java and C++
The actual real-life differences can vary based on a number of factors including but not limited to your network, infra components, the volatility of our instruments and size of updates etc
According to API Concept Guide page 13 in Table 2: API Performance Comparison:
Transport API(ETA) is very high throughput, lowest latency, lowest memory footprint as shown in the table above.
ETA(Elektron Transport API) is one of Elektron API family. ETA is a transport layer API, open source, for the development of high performance and low latency applications. It is available in C and Java edition. For more details, please refer to Elektron API family page.