ERT in Cloud and ETA - Multithreading
Hi team,
A dutch client is considering ERT in Cloud. They raised some concern wrt ETA and multithreading.
Below is the google translation of their question:
I also wondered if it is possible to process the data multi-threaded at ERT in Cloud. The examples I see do not seem to work well in combination with ERT in Cloud. A number use multiple users which is not desirable (due to exchange costs). When we start multiple OmmConsumers with the same login, this causes problems with the token refresh. An OmmConsumer with multiple dispatch threads does not seem to work in a multi-threaded way due to locks in the dispatch method (dispatch threads are waiting for each other). For questions in the developers community I am referred to an example which in my opinion amounts to several OmmConsumers with the same login. Should multiple threads / connections with 1 user be possible?
I found the following question raised however not sure it is related?
Appreciate your input.
Regards,
Erol.
Best Answer
-
Hello @erol.komac
According to section 2.8.4 in the link above:
"the application should authenticate once to the EDP gateway. It is up to the application to distribute both refresh and access tokens to all threads/devices using the same machine credentials to connect to ERT Cloud.
The application should obtain a new token periodically from the EDP Gateway using the refresh token, as mentioned in Section 2.8.3. Upon response from the EDP Gateway, the updated access token should be shared within the application so that each of the connections made to the ERT Cloud can supply this common access token in the login/login reissue request message."
That means only one thread or one OmmConsumer using a user(machine) credential can request token from EDP gateway. Several OmmConsumers or multiple threads / connections requesting token with the same user do not work.
Moreover, OmmConsumer does not manage authenticate to EDP gateway. This is performed by its underlying API,ETA ValueAdd. If you use several OmmConsumers with the same user, each ETA ValueAdd requests access token and this will cause problem. Based on my experience, I suggested the client to uses a single OmmConsumer with batch request which can specify multiple RICs in a single request. Otherwise, you need to modify EMA, ETA Value add source code to share access token to the other OmmConsumers.
0
Answers
-
In my opinion:
To share the token with multiple consumers, the application needs to directly get the token from the EDP gateway. Then, you need to configure consumers to connect to a host on ERT in Cloud with an encrypted connection. Each consumer needs to send a login request which contains the token to ERT in Cloud, and reissue the login request with the new token before the previous token is expired.
In short, instead of relying on session management feature in the Elektron SDK to obtain a token, query service discovery, and reissue a login request, developers may need to implement their own functions inside the application to manage token.
0
Categories
- All Categories
- 6 AHS
- 39 Alpha
- 161 App Studio
- 4 Block Chain
- 4 Bot Platform
- 16 Connected Risk APIs
- 47 Data Fusion
- 30 Data Model Discovery
- 608 Datastream
- 1.3K DSS
- 577 Eikon COM
- 4.9K Eikon Data APIs
- 7 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- Trading API
- 2.7K Elektron
- 1.3K EMA
- 236 ETA
- 519 WebSocket API
- 33 FX Venues
- 10 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 20 Messenger Bot
- 2 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 59 Open Calais
- 264 Open PermID
- 39 Entity Search
- 2 Org ID
- PAM
- PAM - Logging
- 8.4K Private Comments
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 20 RDMS
- 1.4K Refinitiv Data Platform
- 370 Refinitiv Data Platform Libraries
- 3 Refinitiv Due Diligence
- LSEG Due Diligence Portal API
- 3 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.1K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 10 World-Check Customer Risk Screener
- 990 World-Check One
- 44 World-Check One Zero Footprint
- 45 Side by Side Integration API
- Test Space
- 3 Thomson One Smart
- 1.2K TR Internal
- Global Hackathon 2015
- 2 Specialists Who Code
- 10 TR Knowledge Graph
- 150 Transactions
- 142 REDI API
- 1.7K TREP APIs
- 4 CAT
- 21 DACS Station
- 117 Open DACS
- 1.1K RFA
- 103 UPA
- 172 TREP Infrastructure
- 224 TRKD
- 886 TRTH
- 5 Velocity Analytics
- 5 Wealth Management Web Services
- 60 Workspace SDK
- 9 Element Framework
- 5 Grid
- 13 World-Check Data File
- Yield Book Analytics
- 46 中文论坛