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 main 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 main server via one “super” fiber connection. Users located geographically far away from the main server 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 main server thanks to a journaling system. This results is high data reading performance for those users. The TCP connection is always bi-directional. The connection is constantly open and information flows in both directions. All write commands from clients connected to a mirror server are forwarded directly to the main server so there is no risk of conflicting data updates. The main server then handles the changes one at a time and sends change events to all mirror servers. The syncing of mirror cache file(s) is done through the TCP connection as well.
From a user perspective, connecting to a mirror server is just like connecting to the main 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. It is the mirror server that connects to the main server and never the other way around. Regardless of the number of mirror servers connecting to the mainserver, 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.
Setting up a mirror server consists of a number of simple steps which can be completed in the following order.
- To start with, make sure that the machine that will host the mirror server meets the server requirements described in SystemWeaver Server - Software and Hardware Requirements.
- Initialize journaling on the main SystemWeaver server, i.e., creating the .swjournal file
- Update the main server's configuration file to enable journalling
- Test your mirror servers!
You can also browse through SystemWeaver Mirror Server.