The WebSocket API is designed for easy to develop and support various programming languages via the standard WebSocket connection and JSON message format. However, the application needs to manually control the connection and session logic by itself.
The Real-Time SDK uses Refinitiv's proprietary TCP-based connection called RSSL. The RSSL connection encodes data in binary format which is highly optimized for data distribution more than a JSON string format in a WebSocket connection. The EMA API (part of the SDK) is also handling the connection for the application. However, the SDK currently supports the Java and C++ programming languages.
Thanks a lot for detailed answer, Can you also describe which is a better solution(websocket vs real time SDK) in terms of performance for us. Our use case is to send the pricing data every 10 seconds?
The Real-Time SDK (RTSDK) always has a better performance than the WebSocket API because the data is encoded in a binary format.
However, it is also based on your use case (numbers of posting items, the language and library/framework that you are using, etc) that the WebSocket API performance may be enough for your scenario.
1) There are 6-8 attributes we are going to send such as ticker, price , volume, window interval / others. We want to send the pricing data of 6-8 attributes every 5-10 seconds interval
2) We want to use direct connection only for websockets
Could you please clarify my understanding?
If so, the WebSocket API is enough for your requirements. You can find more detail about how to use WebSocket API direct connect to RCC from this Contributing Data to Refinitiv Contributions Channel (RCC) via WebSocket tutorial page.
1.)We are planning to contribute 50,000(IBM/GOOGLE/OTHERS) security pricing data to RCC
2.)Each item contains 5-10 fields of data
3.) we are planning to send data every 5-10 seconds interval
4.)we will connect to RCC directly
Please advice python websocket (directly to RCC) is sufficient or not in term of performance.