We are in the process of evaluating the use of Jess within our application. One of our requirements is to be able to handle failover. We will be using a Master/Slave configuration where the slave is a replica of the master running in the background. If the master goes down, the slave will takeover and become the master. The downed master will then be restarted and brought back to the same state as the new master. The question came up, can Jess handle this? What would be the best way to implement this scenario. The first part seems straight forward (the two engines running with the same rules/facts). The bringing up a downed engine and getting it to the same state as the running engine seems tricky. To get an understanding of this problem I put together a simple program that halts a running engine, does a bsave, creates an new engine, does a bload into the new engine, then continues running with the new engine (just trying to get an understanding of bsave/bload). The rules and current facts in working memory of the old engine are in the new engine but changes to the facts aren't being seen in the new engine (I defined my facts as Java Beans). Any insight to the above would be appreciated. Thanks.