Nservicebus *nix生态系统中存在哪些消息总线技术?
我唯一的SOA经验来自于使用NServiceBus。它设计得非常好,有一些我非常喜欢的漂亮功能:Nservicebus *nix生态系统中存在哪些消息总线技术?,nservicebus,soa,akka,zeromq,amqp,Nservicebus,Soa,Akka,Zeromq,Amqp,我唯一的SOA经验来自于使用NServiceBus。它设计得非常好,有一些我非常喜欢的漂亮功能: 消息的处理是事务性的(并由您负责),因此它是“一次且仅一次”(而不是“至少一次”) 内置传奇支撑 自动重试支持 发布/订阅支持(但我假设所有服务/消息总线都支持此功能) 所有这些让我只能专注于应用程序的逻辑,但我只在.NET中使用过它,而Windows几乎肯定不是我正在进行的项目的新手。所以我的问题是 *nix生态系统中存在哪些服务总线技术(包括在Mono上运行NSB的经验),以及它们如何衡量W
- 消息的处理是事务性的(并由您负责),因此它是“一次且仅一次”(而不是“至少一次”)
- 内置传奇支撑
- 自动重试支持
- 发布/订阅支持(但我假设所有服务/消息总线都支持此功能)
- 基于行程的路由;消息包含访问哪些服务的工作流
- 容器内消息传递;通过在ESB容器中路由消息提高性能,完全避免代理
- Web服务端点;可以通过HTTP端点调用ESB服务,从而弥合非Java/JMS客户端和总线之间的差距
- eclipse中的良好开发工具,用于在Java中开发和调试esb服务和流程
- 管理工具也不错
- 事务不跨越服务边界(自7.5版以来可能已更改)
- 没有消息重试机制;我们使用实用程序服务和消息参数操作(可能在7.5中有所更改)推出了自己的应用程序
- 昂贵的;由core授权,因此希望为此付费
希望它能有所帮助,我已经很久没有认真使用过NServiceBus了(事实上,在那个时候,它甚至没有被称为NServiceBus——它只是Udi编写的替换库,我们不得不在一个联合项目中使用的一个糟糕的comm库:),所以我不知道NServiceBus的所有功能 根据我所知道的,我会说(最初由LinkedIn开发)将是一个很好的起点。它具有相对强大的订购保证,支持发布/订阅消费者池,并支持工作流行为,例如,在其上提供流式处理框架
同样关于客户端接口。你可以找到当前的列表请原谅我不加区分的标记-我想标记尽可能多的选项。Mono上的.NET对你的项目来说是可行的选项吗?@UdiDahan它可能会面临巨大的反对。与VS相比,开发工具较差,而且它们通常不喜欢强类型的编译语言(即C#)。然而,我仍然有兴趣知道Mono上的NSB与其他选项相比如何。这就是我的想法。我认为,最佳情况是使用NSB作为基础设施,但不使用C#编写处理程序(我的同事更喜欢Ruby,目前我更喜欢Node)。这是否可行?有没有具体的计划使之成为可能?这将为NSB打开许多市场。。。