This Knowledgebase article describes the occurrence of application slowdown including the most common symptoms, causes, and resolutions.
Any piece of software installed on a server or workstation consumes a finite amount of system resource when it runs, and it must share the resources it uses with any other applications, which are running at the same time. If the total resource requirements of these applications exceed the available physical resources, the operating system will gracefully attempt to provide resources but may result in some applications being under resourced. This may mean that an application cannot obtain enough memory to operate normally, or that a process needs to wait before being able to access the hard disk.
In a situation where applications are competing for resources, it is likely that one or more of those applications will suffer from poor performance. Operations performed by the application may take longer than usual to complete, and in turn, may affect the time required to log in to a remote client, or to open or save a file. This is true for both servers running Neverfail Engine and for servers running any other application. Neverfail Engine is able to monitor system performance counters and provide warnings if predefined thresholds are exceeded, but it does not actively manage system resources for other applications. Like any other application, it also requires a finite amount of resources for its own operations in addition to the resources used by the operating system and the protected application.
It is very important to ensure that the machines hosting Neverfail Engine meet recommended hardware requirements and are powerful enough to cope with the load imposed by Neverfail Engine, the protected application, and any other critical applications running on the same server group. Neverfail SCOPE provides users with the information to make this decision at install time, and can monitor server performance while Neverfail Heartbeat is running.
Poor application performance
None of the servers in the group is able to accommodate the load placed upon it during normal operation.
This may be due to the Primary server's resource usage in one or more areas being close to the maximum possible before Neverfail Engine was installed.
Neverfail SCOPE is designed to report these types of conditions, and can provide warnings if CPU usage or memory usage exceeds a certain percentage of the available resource. The information provided by SCOPE means that the risk of application slowdown could be minimized by performing any recommended hardware upgrades on the Primary server before Neverfail Engine is installed.
All servers could accommodate the initial load but the load has increased
Application response times have slowed in response to increased user activity.
It is also possible that the server group may be able to operate normally when Neverfail Engine is first installed, with performance decreasing because of an increase in user activity - for example, the number of users on your Exchange system may increase, or the typical usage pattern for a user may become more intense. This may be a gradual and sustained increase over time; or it may be transient if some specific event triggers a temporary surge in user activity.
If the situation is sporadic, it should correct itself when the load decreases. If the increase is sustained and permanent, it may be necessary to upgrade the server hardware to compensate.
One server is able to cope, but the other(s) cannot
Applications operate normally when the Primary server is active but slow when the Secondary or Tertiary (if installed) server is active (or vice versa).
If there is a large discrepancy in the processing power between the Primary, Secondary, and Tertiary servers, it may be that one of the servers can handle the operational load, and the others cannot. The load on a server will generally be higher when it is in the active role, and the protected application is started. Therefore, it is possible that applications on the server group will run successfully when the Primary server is active, but may experience performance issues when the Secondary or Tertiary is active (or vice-versa). Problems may arise even when the more powerful server is active - See Related Information below.
It is good practice to ensure that all servers have approximately equivalent processing power, RAM and disk performance. It may be necessary to upgrade the hardware on one server in the group so that all the servers have roughly the same performance.
Scheduled resource intensive tasks
Resource-intense scheduled tasks impact performance at certain times
System performance may be fine until two or more resource-hungry processes run simultaneously; or, one process may perform actions, which increase the load on Neverfail Engine by triggering additional (and sometimes unnecessary) replication traffic. Typical examples might be processes such as backups, database maintenance tasks, disk defragmentation, or scheduled virus scans.
As far as possible, it is good practice to schedule such operations so that they do not overlap, and to schedule them outside regular working hours, when the load imposed on the server by users accessing the protected application is likely to be smaller.