Connecting an Inference Agent as a Remote Client to a Legacy ActiveSpaces Cluster

You can configure one or more cache agent instances which play the role of the seeder and a proxy server for remote clients. On each of the cache node instances that act as a proxy for the remote clients, a remote listen URL (for the remote clients or Inference agents to connect) is configured. In the remote client, specify the list of IP addresses and ports of remote proxy cache agents to connect to.

Before you beginEnsure the cluster provider is set to Legacy ActiveSpaces, see Setting Up Legacy ActiveSpaces as Cluster and Cache Provider.
    Procedure
  1. In TIBCO BusinessEvents Studio, open CDD of the cache agent, which is part of the cluster.
  2. On the Cluster tab, select Object Management and specify the IP address and TCP port number to open remote proxy in the Remote Listen URL field.
    Selecting IP address and port number is similar to specifying interface and port number for the DataGrid Listen URL.
    Note: In case, multiple cache agents are running on the same machine, override the remote listen URL with a different port for all such agents. You can override the port either by using the be-engine command line or the TIBCO BusinessEvents Enterprise Administrator Agent UI.
    be.engine.cluster.as.remote.listen.url=tcp://<ip>:<port>
  3. Save the project and restart the agent.
  4. In TIBCO BusinessEvents Studio, open CDD of the remote inference agent for editing.
  5. On the Processing Units tab, add the be.engine.cluster.as.discover.url property for the processing unit configured as remote client. Override this property with URL of the proxy cache agent to connect as a remote client.
    be.engine.cluster.as.discovery.url=<discoveryURL>?remote=true&num_connections=2
    Note: For fault tolerance, make two or more of your cache agents as remote proxies. To do so, open a remote listen port on two or more of your cache agents. Specify a list of these nodes in the remote discovery URLs of the remote client inference agents. This minimizes the chance of remote client losing connections to the cluster in case one of the proxy agent stops working.

    You can specify the time for which the cluster waits for remote clients to reconnect after it is disconnected using the property be.engine.cluster.as.remote.member.timeout.

  6. Save the project and restart the agent.