Engine Persistence Modes

Engine persistence mode defines whether engines located on one or more physical machines collaborate with each other or work independently. There are four modes of engine persistence: memory, datastore, group, and ftgroup.

Engine persistence is defined at the AppSpace level and is set to memory by default. To change the engine persistence mode, run the utility to set the persistence mode property bw.engine.persistenceMode to datastore,group or ftgroup.

Engine Persistence Mode: Memory

bw.engine.persistenceMode=memory: By default, the engine persistence mode is set to memory. In the memory mode, there is no persistence and the engines are unaware of the existence of each other. As a result, there is no collaboration between engines.

Engine Persistence Mode: Datastore

bw.engine.persistenceMode=datastore: The datastore mode uses a database to provide persistence and requires a database configuration. The database connection configuration can be specified at the AppNode level. For more information, see Configuring Database for the Engine. The datastore engine persistence mode is required for persistence features such as checkpointing and module shared variables.

Engine Persistence Mode: Group

bw.engine.persistenceMode=group: The group mode uses a database and a group provider to provide persistence and collaboration between the AppNodes. In the group mode, the engines are aware of each other's existence and they can collaborate and work together to enable features such as checkpointing and managed fault tolerance. The configuration details must be specified at the AppSpace level. For more information, see Configuring Database for the Engine and Configuring the Engine for Group Persistence Mode.

Note: In group mode, the engine requires both DB and TIBCO Enterprise Message Service™ (EMS) or TIBCO FTL® as mandatory infrastructure requirement. Along with the data persistence and collaboration, AppNode uses the database for internal functions too. So ensure that the database is always available.

Engine Persistence Mode: FTGroup

bw.engine.persistenceMode=ftgroup:

The ftgroup mode does not use a database, and disregards the application activation mode, but does use a group provider to provide minimal collaboration between the AppNodes. Only one AppNode will run the applications, while the other AppNodes will be standing by, to take over in the event of a failure of the active AppNode. When configured for the ftgroup persistence mode, the engine requires a group provider such as TIBCO Enterprise Message Service (EMS) or TIBCO FTL®, to be configured. Also, note that, since the ftgroup mode does not use a database, this mode does not support checkpointing. For more information, see Configuring the Engine for FTGroup Persistence Mode.