1. Написал клиента, но не понимаю как отправить сообщение на сервер для теста?...
клиент.
import asyncio
import logging
import websockets
from websockets import WebSocketServerProtocol
import os
def log_message(message: str) -> None:
logging.info(f"Message: {message}")
async def consumer_handler(ws: WebSocketServerProtocol) -> None:
async for message in ws:
log_message(message)
async def consume(host: str, port: int) -> None:
ws_url = f"ws://{host}:{port}"
async with websockets.connect(ws_url) as ws:
await consumer_handler(ws)
ws.send("test test")
print(await ws.recv())
if __name__ == '__main__':
HOST = "server"
PORT = 8001
loop = asyncio.get_event_loop()
loop.run_until_complete(consume(host=HOST, port=PORT))
loop.run_forever()
2. Что лучше использовать для длительных обработок на стороне сервера?
response = await loop.run_in_executor(pool, send_to_api, message)
Или будет нормально написать просто:
response = await send_to_api(message) ?
(3.) Пытался разобраться с вебсокетами по данной статье:
https://nuancesprog.ru/p/6466/
Может кто понимает, где надо запускать produce? Совсем не понял его роли в коде...