Architecture 向多个客户端发送事件

Architecture 向多个客户端发送事件,architecture,publish-subscribe,Architecture,Publish Subscribe,我需要将事件发送到多个客户端。目前,我正在使用一个基于Pub-Sub\Observer模式的解决方案,该解决方案使用命名管道在WCF中实现 如果我想将事件发送到Web服务器或Linux机器,我的解决方案将无法工作。对于更通用的解决方案,我有哪些选择 我喜欢我的pubsub,它是多平台的,很多语言都支持它,非常容易绑定,而且速度非常快。Redis也是一个键/值存储引擎,并具有一些其他方便的数据存储功能,因此您可能会发现它的其他用途,用于在windows和linux进程之间交换更持久的数据 如果您希

我需要将事件发送到多个客户端。目前,我正在使用一个基于Pub-Sub\Observer模式的解决方案,该解决方案使用命名管道在WCF中实现

如果我想将事件发送到Web服务器或Linux机器,我的解决方案将无法工作。对于更通用的解决方案,我有哪些选择

我喜欢我的pubsub,它是多平台的,很多语言都支持它,非常容易绑定,而且速度非常快。Redis也是一个键/值存储引擎,并具有一些其他方便的数据存储功能,因此您可能会发现它的其他用途,用于在windows和linux进程之间交换更持久的数据

如果您希望获得更高的性能,还可以使用一个非常灵活、功能强大的消息结构层,但在大多数情况下,这可能有些过头了。

我喜欢我的pubsub需要,它是多平台的,有很多语言支持,非常容易绑定,而且速度非常快。Redis也是一个键/值存储引擎,并具有一些其他方便的数据存储功能,因此您可能会发现它的其他用途,用于在windows和linux进程之间交换更持久的数据


如果您希望获得更高的性能,还可以使用一个非常灵活、功能强大的消息结构层,但在大多数情况下,这可能有些过分。

我猜您需要的是消息服务器或企业服务总线,假设您愿意离开WCF并命名管道

消息服务器通常对平台是不可知的,并且有几种开放和免费的替代方案,例如,和(hexist在另一个答案中建议)。这些服务器(涉及ZeroMQ时的定义问题)使用消息提供了几种不同的集成方式,包括pub/sub

企业服务总线通常更复杂,但也更灵活。它们通常支持消息转换、复杂路由甚至编排。这里也有一些不同的开放和免费的选择,例如,和


我没有使用以上所有的替代方案,但我认为RabbitMQ可以满足您的需要,如果您只是在寻找消息,并且如果您还需要一些漂亮的服务总线功能,请添加MassTransit(用.NET编写)。

我猜您需要的是消息服务器或企业服务总线,假设您愿意离开WCF并命名管道

消息服务器通常对平台是不可知的,并且有几种开放和免费的替代方案,例如,和(hexist在另一个答案中建议)。这些服务器(涉及ZeroMQ时的定义问题)使用消息提供了几种不同的集成方式,包括pub/sub

企业服务总线通常更复杂,但也更灵活。它们通常支持消息转换、复杂路由甚至编排。这里也有一些不同的开放和免费的选择,例如,和

我还没有使用上述所有替代方案,但我认为RabbitMQ可以满足您的需要,如果您只是在寻找消息,并且如果您还需要一些漂亮的服务总线功能,请添加MassTransit(用.NET编写)。

我可以在《企业集成模式》一书中添加这一点是关于通用和健壮集成模式主题的优秀参考。我可以补充说,《企业集成模式》一书是关于通用和健壮集成模式主题的优秀参考。