REDIS Pub/Subを介してワーカーに送信する予定のジョブがあります。ジョブには、画像の処理が含まれます(JPEG、20KB〜800KB、通常は約150KB)。
画像をメッセージのペイロードとして直接送信することをお勧めしますか?
REDIS Pub/Subを介してワーカーに送信する予定のジョブがあります。ジョブには、画像の処理が含まれます(JPEG、20KB〜800KB、通常は約150KB)。
画像をメッセージのペイロードとして直接送信することをお勧めしますか?
これは全く問題ないと思います。サブスクライバー/ワーカーが追いつくことができ、RAMが不足するリスクがないことを確信している場合、これは有効なアプローチだと思います。提案されているようにnginxストリーミングよりも優れているかどうかはわかりませんが、インメモリデータストアのRedisであると、ハードウェアとネットワークの制限にかなり近くなるはずです。
redis pub / subは「耐久性」がないため、画像がチャネルに公開されている場合、現在サブスクライブしているユーザーは誰もその画像を取得しないことに注意してください。画像はどこにも行きません。
耐久性が必要な場合は、redisリストを使用して非常に簡単に耐久性のあるキューを作成できます。
JPEGファイルをbase64で文字列にエンコードし、その文字列をチャネルに公開できます。
送信データ(ペイロードJPEGファイル)のサイズは約1.5倍から2倍に増加します。