System administrators familiar with ArcGIS GeoEvent Server know that a Windows Service (or on Linux, a daemon) provides the real-time server capabilities. The service is run within a Java virtual machine (JVM). At the 10.6 release, a new service is deployed with the GeoEvent Server installation, the ArcGIS GeoEvent Gateway.
The ArcGIS GeoEvent Gateway runs as a service, within a separate JVM, to provide GeoEvent Server with a distributed configuration store (Apache ZooKeeper) and a message broker (Apache Kafka). Prior to the 10.6 release, system architects needing a resilient and scalable solution had to configure an external message broker to handle the distribution of event records from an inbound stream to multiple, independent, GeoEvent Server instances when the velocity or volume of the inbound event stream was more than a single server could handle. A description of this approach is detailed in the GeoEvent Server Resiliency tutorial.
A limitation of this approach was that the GeoEvent Server instances were truly independent; they knew nothing about one another and administrators were burdened with ensuring that each instance maintained an identical configuration. Further, GeoEvent Server, prior to 10.6, relied on a platform service provided by ArcGIS Server for its configuration store. Work was done to make sure the ArcGIS GeoEvent Server service depended on the ArcGIS Server service - such that stopping ArcGIS Server would also stop GeoEvent Server. But the termination and restart of the ArcGIS Server platform services had consequences when trying to architect a GeoEvent Server multiple-machine solution.
The life cycle of the ArcGIS GeoEvent Gateway service is intended to mirror that of the operating system. Administrators may have reason to stop and restart either the ArcGIS Server or GeoEvent Server services - but can leave the ArcGIS GeoEvent Gateway service running. This provides stability for shared configuration storage and coordination of a cross-machine configuration.
The ArcGIS GeoEvent Gateway service also supports the distribution of event records across multiple machines participating in an ArcGIS Server site. Individual instances of the ArcGIS GeoEvent Gateway use an internal message broker to coordinate the distribution of event records so real-time processing of event records can now run across multiple machines. A single, high volume or high velocity inbound data stream can now, with the 10.6 release, leverage a multiple-machine site configuration.
System administrators and solution architects interested in developing multiple-machine site deployments should work with their Esri Technical Advisor for technical support. A new GeoEvent Server multiple-machine site tutorial is being developed and is scheduled for release the first quarter of 2018.