Failover performance
- Last UpdatedAug 13, 2025
- 2 minute read
Much testing has been completed to measure the performance of a system during a failover. Multiple variables have been considered to obtain representative data to reflect the average failover time, CPU and memory utilization in different configurations.
Note that failover performance may vary depending on the number of I/O points referenced in the system, the amount of scripts per instance, task executed by scripts, historized data, alarms and checkpointed data. Script quantity and complexity will increase the failover time, as the system requires more time and resources to process them.
This section presents two architectures with the corresponding application configuration and the results of the performance test.
Note: Attribute tuning for Redundant AppEngines is described on "Tuning Redundant Engine Attributes" on page 87.
Dedicated Standby Configuration

The following table presents the hardware and software used in the architecture shown above. It also presents the configuration of the application tested.
Some of the variables in the table are dependent on the number of I/O points referred to in the application, so the value is shown as a percentage of the total I/O count for the particular scenario.
|
Resources |
Description |
|
Hardware |
Dell Precision 360, 1.0 GB RAM, Pentium 4 CPU 2.8 GHz |
|
Operating System |
Windows XP Pro SP2 for Redundant AppEngine nodes |
|
Configuration |
1 Redundant AppEngine and 1 local DASABTCP DIObject |
|
DIObject |
ABTCPPLC |
|
Instances |
1:8 ratio (instances:I/O points) |
|
I/O Change Rate |
3% of I/O points changing every scan |
|
History |
3% of I/O points historized every scan |
|
Alarms |
Total 10 alarms/sec |
|
Scripts per Instance |
3 (1 OnScan, 2 execute every scan) |
|
AppEngine Scan Rate |
1000 msec |
|
DIObject Scan Group |
1000, 1200, 1500, 1700, 2600, 3300, 4400, and 4600 msec |
|
Modified Attributes |
Checkpoint period: 10000 Force failover timeout: 240000 Maximum time to maintain good quality after failure: 120000 Maximum time to discover partner: 30000 |
The following table presents the results of the test executed to measure the failover time as well as the CPU and Memory utilization.
The Failover values are generated by two events:
-
Network communication failure.
-
Using the Redundancy.ForceFailoverCmd attribute in Object Viewer.
Also note that another key component tracked in the test is the CPU consumed by the DIObject:
I/O Counts
Total Failover Time
CPU Load Avg (%)
Total Memory Usage
Network Failure
ForceFail overCMD
Active Node
Standby Node
DASABTCP
Active Node
Standby Node
2500
23 sec
18 sec
16%
5%
6%
368 MB
306 MB
5000
30 sec
25 sec
22%
5%
10%
371 MB
311 MB
10000
44 sec
43 sec
32%
7%
11%
419 MB
319 MB
20000
59 sec
58 sec
60%
16%
25%
550 MB
399 MB
30000
95 sec
75 sec
88%
11%
39%
663 MB
353 MB
Note: During the transition of the engine from Standby to Active state, the CPU % value can spike to high levels.