4

我有一些工作计划通过REDIS Pub/Sub发送给工作人员。工作涉及处理图像(JPEG,20KB-800KB,通常在 150KB 左右)。

将图像直接作为消息的有效负载发送是个好主意吗?

4

2 回答 2

6

我根本不认为这是一个问题。如果您确信您的订户/工作人员将能够跟上并且您不会冒用完 RAM 的风险,那么我认为这是一种有效的方法。我不知道它是否比建议的 nginx 流式传输更好,但是作为内存数据存储 redis 的扩展应该非常接近硬件和网络限制。

请记住,redis pub/sub 不是“持久的”,因此如果将图像发布到频道,当前没有人订阅它不会被拾取。图像将无处可去。

如果您需要持久性,您可以使用 redis List 轻松构建持久队列。

于 2012-12-22T20:26:58.833 回答
-1

您可以将 JPEG 文件通过 base64 编码为字符串,并将字符串发布到频道。

发送数据(有效载荷 JPEG 文件)的大小将增加到大约 1.5 倍到 2 倍。

于 2018-09-08T09:29:07.480 回答