FTL Stores Overview
FTL stores have a somewhat unique configuration and deployment model in comparison to other EMS storage types. When using FTL stores, the EMS server runs as a service within an FTL server – which is an umbrella process that launches and manages a number of messaging services that constitute a TIBCO FTL deployment. The integration of EMS with FTL in this manner reduces latency in communication between the EMS server and its FTL backend. Additionally, it also allows EMS to make use of FTL’s disaster recovery capabilities.
In terms of functionality, FTL stores are similar to file-based stores. When using FTL stores, all pending persistent message information and state information is maintained in both EMS server memory and in an FTL server cluster. Keeping this information in memory reduces the amount of disk reads required and facilitates faster message processing
As with file-based stores, an EMS server using FTL stores must have access to all state information and pending message information before coming online. The server achieves this by reading the contents of all stores upon start-up or failover.
When making the decision between FTL stores and file-based stores for a fault-tolerant EMS server deployment, there are two main criteria to consider – the underlying storage solution to be used, and whether disaster recovery is a requirement.
If a shared storage mechanism that meets the Support Criteria for shared state is available, file-based stores would be the preferred option. However, when such a storage mechanism is not available, or does not provide reasonable I/O speeds, FTL stores offer a strong, performant alternative that fulfills all the data persistence and replication requirements needed for EMS fault-tolerance. A good example of this is in cloud-based deployments, where shared storage may not be an option, or may be prohibitively slow even when available. FTL stores would be able to leverage the more performant storage options offered by the cloud service provider to support a fault-tolerant deployment. Additionally, a cloud-based deployment of FTL stores would also be capable of deploying across multiple availability zones to provide a level of redundancy and availability that may not be achievable using shared storage.
The other criteria to consider is whether disaster recovery is important for the deployment. When using FTL stores, EMS is able to leverage its integration with FTL to provide disaster recovery as an in-built feature. The EMS server does not have this capability when using file-based stores.