Я бы хотел сделать сервер чата между клиентами пользователей чата.
Системный сервер должен отправить все высказывания переводчику и дождаться ответа.
Я сделал эту систему с помощью библиотеки асинхронных веб-сокетов.
Как справиться с этой ожидающей частью от переводчика, если я перейду на асинхронную систему MQ.
клиент <- сервер -> сервер переводчика
Итак, я создал ветку для ожидания ответа переводчика.
def _run(self, send_to_client):
self.loop.run_until_complete(self.listening_handler(send_to_client))
def run(self, send_to_client):
self.thread_run_flag = True
thread = Thread(target=self._run, args=(send_to_client,))
thread.start()
return thread
async def listening_handler(self, send_to_client):
while True:
data = await reader.read()
if not data:
continue
await send_to_client(data)
Это правильный путь?
Если я хочу использовать один поток с системой MQ, как я могу изменить эту структуру?