我希望建立一个系统,该系统由通过 NServiceBus 进行通信的各种自治服务组成。该系统将在客户端位置以各种配置(可能排除某些服务,服务设置不同)进行部署。这些位置通常是大型仓库,不会拥有庞大的 IT 基础设施。这些服务可能都位于一台机器上,也可能位于许多不同的机器上;这可能因每个站点而异。大多数站点将有一个活动数据库服务器(通常是 SQL 服务器)和一个备份服务器。站点将以不同的时间间隔对数据库进行预定备份 - 比如说每天。
每个服务都有自己的数据存储(这可能是一个真正独立的数据库或共享模式中的隔离表)。每个服务当然也有它自己的消息队列。尽管服务是自治的,但它们确实将来自其他服务的信息作为一种本地只读缓存在本地存储(参考在它们自己的数据库中),但这些数据来自接收到的消息。
这里有一个问题:我如何对这个系统进行有意义的(即一致的和可恢复的)备份?
我已阅读 Udi Dahan 关于此主题的以下相关答案:http: //tech.groups.yahoo.com/group/nservicebus/message/12815 我对这个答案的问题是:没有数据中心,没有 SAN;没有快照。有用于在现场和/或非现场备份数据库的“普通”系统管理员。