Питон (Джанго).Сохранить telnet-соединение
Вопрос
Я программирую веб-интерфейс, который связывается с коммутаторами Cisco через telnet.Я хочу создать такую систему, которая будет хранить одно telnet-соединение на каждый коммутатор, и каждый скрипт (веб-интерфейс, задания cron и т. д.) будет иметь к нему доступ.Это необходимо для создания единой очереди запросов для каждого устройства и предотвращения огромной нагрузки на процессор Cisco, вызванной несколькими одновременными соединениями telnet.Как мне это сделать?
обновлено
Вариант с демоном обработки соединений хорош и будет работать наилучшим образом.Совместное использование объекта telnet-соединения между сценариями может оказаться трудным для реализации и отладки.Но этот вариант интересен тем, что интерфейс используется только несколькими операторами и заданиями cron.
Решение
Обычным способом было бы запустить процесс в фоновом режиме, который удерживает постоянные соединения telnet и команды, поставленные в очередь для их отключения.
Затем подключите к нему внешние сценарии (например.через сокет unix) для постановки команд в очередь и асинхронного получения результатов.
Но это может быть излишним.Сколько человек, по вашему мнению, будут одновременно использовать интерфейс коммутатора?Облегченной альтернативой только для веб-части было бы сохранить объект соединения telnet в веб-скриптах и настроить веб-сервер/шлюз на запуск только одного экземпляра вашего веб-приложения одновременно.