Pythonでマルチプロセッシングを使用してメッセージをデコードしています。私には20人の労働者がいます。メッセージをデコードするワーカー。メッセージ サイズ ~0.1 - 1MB をデコードした後。
def do_work(message):
try:
msg = pickle.loads(message[1])
decoded_msg = codec.DECODE(Message(**msg).content)
except:
decoded_msg = "Unable to decode message"
約 2k から 5k のメッセージがあります。デコード処理は比較的高速です。しかし、ワーカーから結果を取得しようとしているとき:
decoded_msg.append(outQ.get())
それは信じられないほど遅いです。
私の質問は、受信プロセスが非常に遅い理由と、そのパフォーマンスを向上させる方法です。