Я ищу абстрактный и чистый способ обмена строк между двумя программами python. Протокол действительно прост: клиент/сервер отправляет строку серверу/клиенту, и он принимает соответствующее действие - через обработчик, я полагаю, - и отвечает ИЛИ НЕ с другой стороны другой строкой. Строки могут быть тремя вещами: подтверждением, сигнализирующим одной стороной о том, что другой по-прежнему жив; маринованный класс, содержащий команду, при переходе от «клиента» к «серверу» или ответ, если он перейдет от «сервера» к «клиенту»; и, наконец, команда «блокировка», которая сигнализирует стороне разговора, что другая работает, и никаких дополнительных вопросов не следует задавать до получения другого пакета блокировки.Simple server/client string exchange protocol
Я смотрел на Python встроенный SocketServer.TCPServer, но это слишком низкий уровень, он не просто поддерживает пересоединение, и клиент должен использовать интерфейс сокета, который я предпочел инкапсулировать.
Затем я исследовал скрученную структуру, в частности, протокол LineOnlyReceiver и примеры серверов, но я обнаружил, что начальная кривая обучения слишком крутая, онлайн-документация, предполагающая слишком много знаний и общее отсутствие примеров и хорошей документации (кроме 2005 O'reilly book, это все еще актуально?).
Затем я попробовал библиотеку pyliblo, которая идеально подходит для задачи, увы, она мононаправленная, нет возможности «ответить» на клиента, и мне нужен ответ, который будет связан с конкретной командой.
Итак, мой вопрос: существует ли существующая структура/библиотека/модуль, который позволяет мне иметь клиентский объект на сервере, читать команды и отправлять ответы и серверный объект на клиенте, чтобы прочитайте ответы и отправьте команды, которые я могу использовать после простой настройки (клиент, адрес сервера - хост: порт, сервер, вы слушаете порт X) с базовым сокетом, механизмом пересоединения и так далее?
спасибо заранее, чтобы любой ответ (простите мой английский и неопытность, это мой первый вопрос)
Да! это есть! большое спасибо! – uovobw