Planning for Fault Tolerance

The goal of a fault-tolerant environment is to ensure that if a hardware component fails, FME Flow remains online.

The fault tolerant architecture is comprised of multiple, redundant web application servers (to run the FME Flow Web Services) and FME Flow Cores spread across separate host machines. FME Engines can be hosted on the same machine, across additional hosts on the same network, or across networks.

A third-party load balancer is required, which directs incoming traffic to one of the redundant web components.

The web application server provided by the installer is Apache Tomcat. Optionally, you can provide your own web application server instead of using the one shipped with the installer. We recommend installing the web application server on the same system as the Core, but this component can also be distributed.

The FME Flow Database can be hosted on a PostgreSQL database server provided by the installer, or you can configure the database on your own server using PostgreSQL (recommended), Microsoft SQL Server or Oracle. We recommend providing your own database server configured for redundancy. If using an Oracle database server, you must obtain the Oracle Database JDBC Driver.

Note  PostgreSQL is the recommended database server with FME Flow, offering enhanced performance and stability through targeted optimizations.

Organizations are expected to maintain the FME Flow Database and FME Flow System Share (a file system for hosting Repositories and Resources) on their own fault-tolerant servers. This ensures the fault-tolerant FME Flow has reliable access to workspaces, repositories, resources, and other items.

Warning  We recommend installing all FME Flows on systems that are synchronized to the same time zone. If time zones differ across FME Flows, unexpected issues may arise, including:
Note  In a fault tolerant installation of FME Flow, the Automations triggers UDP Message and Email - SMTP (and corresponding Notification Service UDP Publisher and SMTP Publisher) are not supported. To receive email messages, consider the Email - IMAP trigger instead.

Example Architectures

Example 1: FME Engines hosted on the same machine as the web application server and FME Flow Core

Mouse-over for diagram:

Example 2: FME Engines distributed and hosted on a separate machine from the web application server and FME Flow Core

There can be any number of distributed FME Engine hosts associated with the FME Flow Core.

Mouse-over for diagram:

Example 3: A combination of examples 1 and 2

Some FME Engines are hosted on the same machine as the web application server and FME Flow Core, and others are distributed.

Mouse-over for diagram:

To Install a Fault Tolerant System