Replication

對於 AlwaysOn AG,當輔助副本的資源用盡時,輔助副本是否會導致主副本爭用?

  • November 26, 2019

當輔助副本的資源被最大化時(例如,在等待輔助副本趕上同步時,主副本是否“鎖定”),輔助副本是否有可能以及以何種方式導致與主副本的爭用?

如果將輔助副本的可用性模式設置為非同步送出與同步送出,是否會有所不同?

用非常簡單的話來說:

非同步模式下,如果副本無法跟上其主副本,那麼日誌發送隊列將無限增加,直到負載減少。

在 perfmon: SQLServer:Database Replica Log Send Queue

基本上,主節點會繼續嗡嗡作響,但副本只會越來越落後。

同步模式下,如果副本無法趕上,那麼您將看到主伺服器上的事務延遲增加。換句話說,主節點花在等待副本送出/加固事務上的時間。

在 perfmon: SQL Server 數據庫副本:事務延遲

除非副本當然是離線的,否則沒有延遲。

有關導致同步模式延遲的更詳細資訊:https ://blogs.msdn.microsoft.com/psssql/2018/04/05/troubleshooting-data-movement-latency-between-synchronous-commit-always-on-可用性組/

@scismon 提出了一個很好的觀點。如果副本跟不上,日誌將以非同步模式填滿。

select log_reuse_wait_desc, * from sys.databases

log_reuse_wait_desc 顯示為 AVAILABILITY_REPLICA

在同步模式下,Primary 必須等待 Secondary 硬化事務,然後才能在 Primary 上送出事務。來自硬體或流量的延遲可能會導致主伺服器上的日誌文件被填滿,這會給 CPU 和磁碟帶來額外的負載,以便在日誌備份期間清除日誌文件。

同步和非同步的區別

引用自:https://dba.stackexchange.com/questions/254161