Я пытаюсь написать приложение, которое позволит пользователю запускать длительные процессы вычислений, которые будут получать команды от веб-сервера с использованием ØMQ. Я использую стандартную архитектуру запроса-ответа: на сервере есть сокет REQ, подключенный к сокету REP рабочих процессов. Когда от пользователя поступает новая команда, она отправляется рабочему процессу:
self.instance_dict[instance_id].socket.send(json_command)
result = self.instance_dict[instance_id].socket.recv()
Проблема возникает, когда вторая команда отправляется, пока первая еще выполняется.
Обеспечивает ли ØMQ функциональность, которая позаботится об очередях сообщений, или я сам ее не реализую? Или я должен изменить архитектуру?