The SystemWeaver Mirror Server is a new and improved technology replacing the former SystemWeaver Slave Server. As a means of addressing inherent network latency for SystemWeaver users located geographically far away from the master server, or for large installations (300+ concurrent users), Systemite can offer this mirror solution. The mirror server can be thought of as a super client that passes requests to a started master server via one “super” fiber connection. Users located geographically far away from the master can connect to a local mirror server, yet still access the same real-time data. Likewise, for very large installations, the mirror server solution offers a means to horizontally scale server usage by grouping smaller user populations by server.
Users connected to a mirror server obtain their data from a cache file on the mirror server that is configured to fetch data from the master server thanks to a journaling system. Likewise, change events originating on the mirror server are sent to the master server so that the servers are always in sync. To allow this to happen, there are multiple channels for Write operations and one channel for Read operations. From a user perspective, connecting to a mirror server is just like connecting to the master server; users can work simultaneously on the same data and see changes to data in real time.
A mirror server solution can consist of one mirror server, as shown above, or many depending on the locations of users or how you wish to split up a larger user population. Regardless of the number of mirror servers connecting to the master server, they will all behave similarly.
The below illustration shows an example of vertical scaling using the mirror server solution. Three mirror servers, each located in different geographical locations, are set up and all clients log in to a mirror server instead of logging in to the main server.