Я запустил проект, который требует и использует веб-сокеты для отправки информации с сервера X на клиент Y, как и предполагалось.
Однако я продолжал сталкиваться с проблемой, когда каждые 20 с или около того соединение будетбыть отброшенным, поскольку именно таков должен быть TCP / IP, поэтому мне нужно отправить сердцебиения как таковые.
Прежде чем я продолжу, есть ли другой способ сделать это (кромеотправьте сердцебиение), пожалуйста, дайте мне знать.
Итак, методология, которую я собирался сделать в паутину перед отправкой сердцебиения, была такой:
async def listener(websocket, path, service):
command = service['log_command']
p = subprocess.Popen(command, stdout=subprocess.PIPE, bufsize=1, shell=True)
prev_sd = "-1"
await heartbeat_manager(websocket)
asyncio.sleep(5)
while True:
await websocket.send(p.stdout.readline())
while True
иПосле того, как все, что нас волнует, я намерен сделать так, чтобы веб-сокет отправлял сердцебиение некоторого текста каждые 5 секунд, но не знаю, с чего вообще начинать.
Sidenote: есть еще одна функция, которую я вызываюэто на самом деле запускает эту веб-розетку, но это не имеет отношения к вопросу, поэтому я не включил его, но будьте уверены;он существует (и весь этот код функционален, но только за 20 секунд до смерти).