Sql-Server

事務複製架構 - 一篇文章 - 多個訂閱者

  • March 22, 2022

Distributor問:伺服器使用 1publication到 2subscribers或使用 2且每台publications相同articles的伺服器更便宜/更高效subscriber

細節:

我們最近遇到了一個問題,即我們Transactional ReplicationDistributortoSubscriber程序將停止並且不會優雅地恢復。這幾乎就像一些事務被跳過或被亂序應用。從歷史上看,我們剛剛解決了這個問題reinitializingpublication繼續前進。

我們已將其縮小到Distributor伺服器上的資源利用問題。大多數情況下,我們可以通過重新啟動伺服器來解決,Azure但較大的伺服器publications並不總是自行恢復。

我們articles需要將所有內容傳遞到兩台不同的伺服器(一台用於 IT 部門擁有的報告功能,另一台用於數據分析師團隊擁有的報告功能)。我們將把各種文章分成幾組,每組得到 2 篇,然後將它們發送到我們接受兩者publications的單獨伺服器。一個連接到 IT 伺服器,另一個連接到 Data Analyst 伺服器。如下所示:Distributor``Publications``publication目前的複制架構

資源利用問題的部分原因是數據分析伺服器上對命令blocking應用的昂貴查詢。replication我們正在與該團隊合作以改進查詢,但我也想看看我們是否可以進行架構調整以提供幫助。

我正在尋找是否有任何理由可以降低Distributor發送 1publication到 2subscribers而不是使用 2publications到單個的成本subscriber。如下所示:潛在的複制架構

有沒有人對這種潛在的實施有任何經驗?

我不認為這應該有太大的區別,但通常除非在同一篇文章中需要第二個發布者(例如,每個發布者使用不同的行或列過濾器),沒有理由有兩個發布者並且會導致經銷商需要做一些額外的工作來管理兩個而不是一個。

如果我的記憶體伺服器正確,事務複製分發器首先將事務的命令複製到訂閱伺服器,然後再應用它們。因此,如果您的問題是其中一個訂閱者上的鎖定/阻塞問題,那麼無論如何這與您的發布者到分發者架構無關。

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