【发布时间】:2016-01-23 06:09:39
【问题描述】:
我正在针对特定项目使用 NSQ http://nsq.io/ 进行评估。这个想法是建立一个数据管道,其中每个步骤都是一个作业,并且理想情况下状态将位于消息正文中。
这让我想到了潜在的最大消息大小。我无法找到有关该主题的任何文档。可以是任意大小吗?如果消息大到无法放入内存,我想这会影响性能。
【问题讨论】:
标签: nsq
我正在针对特定项目使用 NSQ http://nsq.io/ 进行评估。这个想法是建立一个数据管道,其中每个步骤都是一个作业,并且理想情况下状态将位于消息正文中。
这让我想到了潜在的最大消息大小。我无法找到有关该主题的任何文档。可以是任意大小吗?如果消息大到无法放入内存,我想这会影响性能。
【问题讨论】:
标签: nsq
正如 Aldo 提到的,默认的最大消息大小约为 1 兆字节。
这很容易通过 NSQ 守护程序的 max-msg-size 开关进行更改。以下是如何使用它的示例:
nsqd --lookupd-tcp-address=127.0.0.1:4160 -max-msg-size=2097152
这告诉 NSQ 守护进程 (nsqd) 最大消息大小应该是 2 兆字节而不是默认值。
使用此设置,您确实可以收到一条可以填满您记忆的消息,正如您在评论中提到的那样。
【讨论】:
据我从文档中得知,它看起来像 it's 1MB by default。
我知道这听起来很多,但我设法达到了这个限制。
我现在要做的是发送一条 NSQ 消息,其中包含有关事件的最少数据量,并在我处理它时在另一端获取完整数据。
【讨论】: