Service mode failover

In order to support ApplicationServer Failover for ServiceMode communications, ServiceMode servers can send messages to any application server. However, application server messages must be routed to the correct ServiceMode server because meter data can only reside on a single ServiceMode server.

When IEE schedules a Remote Interrogation, one of the application servers sends the request to the ServiceMode server that communicates with the requested meter. The ServiceMode server returns the requested meter data to one application server. If that application server does not respond, the ServiceMode server sends the meter data to another application server.

As long as one of the application servers is available, IEE receives the requested data.

IEE defines each ServiceMode server as an ExternalSystem of type RemoteInterrogation. The ipAddress attribute can contain the machine name or the IP address assigned to the machine. The port attribute specifies the port number monitored by the DAQiListener process on the ServiceMode server (the Server Type attribute must be set to MV90).

When DAQiListener is started on an IEE ApplicationServer, IEE writes the port number it monitors to the Server information in the IEE database (you can see this in the Server Maintenance screen by clicking on Server Type “Task Server”).

IEE sends all application servers defined in the IEE database with a DAQiPort to all ServiceMode machines defined as RemoteInterrogation ExternalSystems. When each ServiceMode machine receives this message, it updates the list of remote systems in its registry.

If an hour has passed since the ServiceMode server last updated the list of available application servers, ServiceMode requests a list of current application servers from any functioning application server. ServiceMode updates the registry with the new list when it receives the response. This ensures all ServiceMode machines maintain a current list of application servers, so if one is disabled, communication defaults to another.