|Push Subscription||With a push subscription, the Publisher propagates changes to a Subscriber without a request from the Subscriber. Changes can be pushed to Subscribers on demand, continuously, or on a scheduled basis. The Distribution Agent or Merge Agent runs at the Distributor.||Data will typically be synchronized continuously or on a frequently recurring schedule.
Publications require near real-time movement of data.
The higher processor overhead at the Distributor does not affect performance.
Most often used with snapshot and transcriptional replication.
|Pull Subscription||With a pull subscription, the Subscriber requests changes made at the Publisher. Pull subscriptions allow the user at the Subscriber to determine when the data changes are synchronized. The Distribution Agent or the Merge Agent runs at the Subscriber.||Data will typically be synchronized on demand or on a schedule rather than continuously.
The publication has a large number of Subscribers, and/or it would be too resource-intensive to run all the agents at the Distributor.
Subscribers are autonomous, disconnected, and/or mobile. Subscribers will determine when they will connect and synchronize changes.
Most often used with merge replication.