NATS IO内部架构

时间:2017-09-27 02:43:25

标签: performance message-queue nats.io

目前我正致力于将TIBCO RV迁移到NATS IO以进行项目。我很想知道什么内部架构使NATS IO成为他们在其网站http://nats.io/about/中声称的优越性能。我无法在网上找到解释nat内部的任何资源。有人可以帮我这个吗?。

3 个答案:

答案 0 :(得分:4)

NATS的创建者Derek Collison在protocol documentationpresentation中引用了一个很好的概述。他介绍了NATS的一些高性能领域,包括零分配字节解析器,主题管理算法和golang优化。

NATS是开源的 - 实现细节可以在gnatsd repository中找到。协议parsersubject handling将是一些值得关注的领域。

答案 1 :(得分:0)

我当然参与了RV和NATS。我并不是说NATS比RV快。尽管我同时设计和制造了这两种产品,但多年来我都没有对RV进行任何类型的性能测试。 NATS应该比较好,当然是OSS,并且具有简单的基于TEXT的协议和RV的二进制协议。 NATS是一种使用TCP / IP的覆盖设计,类似于我也设计的TIBCO EMS,但是RV可以使用多播(PGM)或可靠的广播。因此,在大多数情况下,RV在较大的扇出状态下将更为有效。

答案 2 :(得分:0)

通常,消息传递系统的性能与IMO的3个简单条件有关。

  1. 每个IO调用或从用户跳转到内核空间可以处理多少条消息。

  2. 您可以多快地路由消息以进行分发,例如主题分发者。

  3. 系统复制数据以实现#1合并消息的效率如何。