Enhancing Replication Performance
Before replication is configured, we recommend that you familiarize yourself with the factors that affect replication performance:
- Server and network hardware
- Database design
- Distributor configuration
- Publication design and options
- Filter design and use
- Subscription options
- Snapshot options
- Agent parameters
For more information about how these factors affect each type of replication, see:
- Enhancing General Replication Performance
- Enhancing Transactional Replication Performance
- Enhancing Merge Replication Performance
After replication is configured, we recommend that you develop a performance baseline, which allows you to determine how replication behaves with a workload that is typical for your applications and topology. Use Replication Monitor and System Monitor to determine typical numbers for the following five dimensions of replication performance:
- Latency: the amount of time it takes for a data change to be propagated between nodes in a replication topology.
- Throughput: the amount of replication activity (measured in commands delivered over a period of time) a system can sustain over time.
- Concurrency: the number of replication processes that can operate on a system simultaneously.
- Duration of synchronization: how long it takes a given synchronization to complete.
- Resource consumption: hardware and network resources used as a result of replication processing.
Latency and throughput are most relevant to transactional replication, because systems built on transactional replication generally require low latency and high throughput. Concurrency and duration of synchronization are most relevant to merge replication, because systems built on merge replication often have a large number of Subscribers, and a Publisher can have a significant number of concurrent synchronizations with these Subscribers.
After you have established baseline numbers, set thresholds in Replication Monitor. For more information, see Setting Thresholds and Warnings in Replication Monitor and Using Alerts for Replication Agent Events. If you encounter a performance problem, it is recommended to read through the suggestions in the enhancing performance topics listed above and to apply changes in areas that affect the issues you are encountering.