Rov*_*ret 1 replication sql-server transactional-replication
我们在 SQL Server 2014 中使用事务复制,有一个主(发布者)、1 个分发者(专用服务器)和 3 个从(订阅者)。
所有的写入都是对 master 进行的,而读取是从 3 个订阅者之一完成的。
我的问题是,如果您进行了插入/更新/删除操作,并且页面正在刷新,则更新尚不存在。在订阅者更新之前有 1-4 秒的延迟,这会使用户感到困惑,因为该行已插入/删除/更新,但尚未反映在订阅者上...
我们正在考虑进行点对点复制,但这似乎是 IDENTITY 的开销,它可以返回写入一个,但复制也需要太多时间......
我们可以/应该做什么?
我们可以/应该做什么?
放弃同步复制的假设并相应地重新设计您的应用程序。复制从来不是为此而设计的。可能会出现数小时延迟,您应该相应地进行设计。
现有的 SQL Server 技术(包括同步提交模式下的可用性组可读辅助节点)都不能保证同步传播对副本/辅助节点的更改。您可以回读自己的更改并保证看到您自己的更改的唯一地方是发布者/主要,在那里首先进行了更改。任何相反的期望都是愚蠢的。