【问题标题】:RavenDB NserviceBus for multiple EndpointsRavenDB NserviceBus 用于多个端点
【发布时间】:2015-06-04 18:28:25
【问题描述】:


我有一个 MVC Web 项目的多个端点。 我应该如何使用 RavenDB?

我想保留一个 saga 项目作为端点和多个其他端点。 除了 Saga 项目,没有其他端点需要持久性,因为 Saga 项目是流程控制器,它必须存储 Sagadata。它将管理流程并更新我想使用 RavenDB 存储 sagadata 的 SagaData。

但是,对于我认为必须设置持久性和不必要的每个端点,我必须实例化数据存储并将其放置在每个端点上是否正确?

我应该选择 EmbededRavenDB 还是托管在 IIS 中的 RavenDB?

我想使用 EmbededRavenDB,因为它不需要在服务器中打开端口。 我认为明智的服务器部署会很容易。是真的吗?

对于每个端点,我是否必须在配置总线时重新创建文档存储实例?我不清楚如何跨端点管理数据库。

我们有样品吗? 我应该如何进行?有什么想法!

【问题讨论】:

  • 我正在使用 IIS 托管的 RAVEN DB,我应该如何跨端点共享 DocumentStore。如果我继续为所有端点实例化相同的文档存储,那么我将无法从 SAGA 向任何端点发送消息,出现错误:NServiceBus.Unicast.Transport.TransportReceiver Failed to process message System.Runtime.InteropServices.COMException 0x8004D102): A resource manager with the same identifier is already registered with the specified transaction coordinator.

标签: ravendb nservicebus


【解决方案1】:

我正在使用 6 个端点,对于每个端点,我通过为每个端点应用唯一的资源管理器来为 ravendb 实例化新的文档存储。但是,我希望我可以使用 Embeded RavenDB,但我不确定我应该如何使用 6 个端点和一个 MVC 项目的嵌入。哪一个将是服务器我应该把 DATA 文件夹放在哪里我有很多问题。

到目前为止,我的开发还不错,不确定如何使用 Ravendb IIS 托管的 NServicebus 在服务器中进行设置。

【讨论】:

  • 我会将 RavenDB 安装为服务,并让所有端点/进程使用单个数据存储来实现持久性。 (端点是托管 NServiceBus 处理程序的进程)
  • 嗨,肖恩,我也在做同样的事情。我将 RavenDB 安装为 IIS 服务器,并且我的所有端点都指向同一个 RavenDB 服务器。在配置端点持久性时,它们会实例化指向 IIS 中托管的 RavenDB 服务器的 DocumentStore。几乎一样。我唯一担心的是,配置时的每个端点都会使用其唯一的资源管理器来实例化 ravendb 数据存储。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-13
  • 1970-01-01
  • 1970-01-01
  • 2013-12-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多