Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Erlang 将其用于JSON数据传输_Erlang_Message Queue_Messaging_Rabbitmq - Fatal编程技术网

Erlang 将其用于JSON数据传输

Erlang 将其用于JSON数据传输,erlang,message-queue,messaging,rabbitmq,Erlang,Message Queue,Messaging,Rabbitmq,我尝试将RabbitMQ用于分布式系统,其工作方式如下: 生产者将JSON格式的订单ID列表放入队列 几个使用者从该队列中退出,使用该顺序ID执行业务逻辑,结果(JSON格式)也被放回另一个队列中 从第二个队列中,另一个使用者将获取数据并将其传递回调用方 我对RabbitMQ仍然很陌生,我想知道这个模型是否是正确的方法,因为数据应该尽快返回(有时在几秒钟内,最多5秒钟),所以有实时要求。 另外,传递到队列的消息可以有多大?根据消费者的行为,生产者将获得相当大的JSON 谢谢你的建议 你建议的

我尝试将RabbitMQ用于分布式系统,其工作方式如下:

  • 生产者将JSON格式的订单ID列表放入队列
  • 几个使用者从该队列中退出,使用该顺序ID执行业务逻辑,结果(JSON格式)也被放回另一个队列中
  • 从第二个队列中,另一个使用者将获取数据并将其传递回调用方
我对RabbitMQ仍然很陌生,我想知道这个模型是否是正确的方法,因为数据应该尽快返回(有时在几秒钟内,最多5秒钟),所以有实时要求。 另外,传递到队列的消息可以有多大?根据消费者的行为,生产者将获得相当大的JSON


谢谢你的建议

你建议的设计没有问题

有一点值得注意的是,强制执行“实时需求”并不简单。例如,当前不可能使队列中的消息过期,因此在使用消息时需要由客户端处理


RabbitMQ中消息的总大小参见本()中的第47页,了解不同消息格式之间的巨大比较

谢谢,所以整体消息不应该超过4GB,或者每条消息都不应该超过4GB?如果是第二个,那么就没有问题了。。。我不会达到那个数目。。。最大的消息可能有几MB。再次感谢。每条消息不能超过4GB。队列中的消息的总大小不能超过可用的磁盘空间。我还想考虑使用更简单的基于流的二进制格式来进行更快的处理。对json进行编码/解码需要时间。json库中也可能存在问题,这取决于它们如何检测和转换数据类型。