我们将 NServiceBus 4.6 与 SQL Server 传输 (2012) 一起使用。使用可用性组设置 SQL Server 数据库以实现高可用性。
我们的 DBA 抱怨我们在传输数据库中发生的“流失”量,尤其是这给我们的 WAN 带来的负载。
我们目前正在使用 XML 序列化,因此我开始研究我们可用的其他序列化选项(可能更倾向于 JSON,以便它仍然可读)。然而,在开始研究这一点时,我意识到我们的消息体通常在 600 到 1000 字节之间,而我们的消息头通常在 1200 - 1800 字节1的范围内。因此,即使我在体型方面实现了很大的节省,也不会产生我正在寻找的大规模改进。
问题
据我了解,当消息存储在 SQL Server 数据库中时,标题不必是可读的,有什么方法可以压缩它们吗?
或者其他策略来减少我们从这个数据库中添加和删除的数据量?(虽然暂时停留在 NSB 4.6 上)
1我们自己为不属于消息类的元数据添加了一些自定义标头。
a由于每条消息至少进入一个队列表,然后从该表中删除并放置在审计表中,在我们稍后删除较旧的审计条目之前,我们有很多消息,我们放了很多在 SQL Server 事务日志中。