#python #sockets #websocket #python-requests #python-sockets
Вопрос:
в настоящее время я пишу программу, которая считывает много данных из подключения к веб-сайту. Код выглядит примерно так:
import asyncio
import websockets
async def reader(self):
url = "my_url"
while True:
try:
async with websockets.connect(url) as websocket:
async for message in websocket:
self.handleData(message)
except:
settings.printError("Lost connection, trying again")
По этому соединению передается много данных: при максимуме, возможно, 1000 сообщений в секунду. Мой вопрос в том, что делает python, если выполнение функции «Обработанные данные(сообщение)» занимает слишком много времени до поступления следующего сообщения. Я предполагаю, что есть какой-то буфер, но что произойдет, если всегда будет больше сообщений, чем программа сможет обработать?
Комментарии:
1. В основном TCP будет замедляться или даже останавливаться. Отправка будет заблокирована до тех пор, пока не будут прочитаны некоторые данные. en.wikipedia.org/wiki/…