question

Upvotes
Accepted
8 12 13 18

NIP publishing on 2 ADH without multicast

I'm working on a NIP which needs to publishes on my TREP infrastructure. Here's my need:

  • One NIP
  • Two ADH
  • I can't use multicast on the server which hosts the NIP
  • I need a fault tolerant solution on the TREP side

Here's what I'm doing currently:

And here’s my test scenario:

  1. I start the ADH pair:
    hot standby : ADH1 active / ADH2 standby
    cache resiliency : True
    cache percistency : True
  2. I start the NIP
  3. When the NIP starts, it connects to the first server of its list: ADH1
  4. My NIP publishes a couple of updates on InstrumentA
  5. I shutdown the NIP
  6. I kill ADH1
  7. If I dump the cache of ADH2, there’s no trace of InstrumentA <= this is a problem

Another scenario:

  1. I start the ADH pair (same configuration)
  2. I start the NIP
  3. When the NIP starts, it connects to ADH1
  4. My NIP publishes a couple of updates on InstrumentA
  5. I kill the ADH1. (ADH2 is now active)
  6. The NIP connects to ADH2
  7. I restart the ADH1. (ADH2 is still active, so ADH1 is standby)
  8. I kill the NIP
  9. I start the NIP

The NIP connects to the first server of its list: ADH1 (which is standby) <= this is another problem…

Am I doing something wrong?
Is there something I should do on my NIP in order to post simultaneously (via RSSL, because I can't use multicat) on both ADH?

elektronrefinitiv-realtimetrepADHnon-interactive-provider
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.

(sorry, I posted my question in the "answer"... I'm still new with the forum and I don't see how to edit my question)

That's all right. :)

You can edit your question by clicking the gear icon at the top right corner, next to the question tags.

Hello @nicolas.roux

Thank you for your participation in the forum. Is the reply below satisfactory in resolving your query? If yes please click the 'Accept' text next to the reply. This will guide all community members who have a similar question. Otherwise please post again offering further insight into your question.

Thanks,

AHS

1 Answer

· Write an Answer
Upvotes
Accepted
4.4k 10 6 9

Hi @nicolas.roux

I am not sure which TREP API you are using but I assume it is RFA.

If you want RFA to connect to both ADH, you have to use connectionList.

\Sessions\SessionOMMNIProv\connectionList = "Connection_RSSL_NIPROV,Connection_RSSL_NIPROV2"


\Connections\Connection_RSSL_NIPROV\connectionType		= "RSSL_NIPROV"
\Connections\Connection_RSSL_NIPROV\rsslPort 			= "14003"
\Connections\Connection_RSSL_NIPROV\hostName			= "192.168.27.30"

\Connections\Connection_RSSL_NIPROV2\connectionType		= "RSSL_NIPROV"
\Connections\Connection_RSSL_NIPROV2\rsslPort 			= "14003"
\Connections\Connection_RSSL_NIPROV2\hostName			= "192.168.27.60"

With this configuration, RFA should connect and publish to both ADHs.

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.

Thanks a lot Warat, it's working perfectly fine!

I just had to modify the Reuters example (ommprovnimdi /

LoginClient.java) in order to always call processLogin(true) as it's explained in the code comments:

// If there is more than one Connection, then this could would 
// need to be changed to always call processLogin(true) when the
// re is a refresh. In general, if applications wish to use two
// Connections, it is recommended that they use two Sessions. // (...) // if (!_loggedIn)
//{
_loggedIn = true;
_mainApp.processLogin(true);
//}
}

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.