2010-05-18 9 views
0

Je programme une interface Web qui communique avec les commutateurs Cisco via telnet. Je veux faire un tel système qui stockera une connexion telnet par commutateur et chaque script (interface web, tâches cron, etc.) y aura accès. Cela est nécessaire pour créer une seule file d'attente de requêtes pour chaque périphérique et éviter une énorme charge de processeur Cisco causée par plusieurs connexions Telnet concurentes. Comment est-ce que je peux faire ceci?Python (Django). Mémoriser la connexion telnet

mis à jour

Option avec un démon qui gère la connexion est bonne et fonctionne de la meilleure façon. Le partage de l'objet de connexion telnet entre les scripts peut être difficile à implémenter et à déboguer. Mais cette option est intéressante car l'interface n'utilise que deux opérateurs et des tâches cron.

Répondre

1

La manière habituelle serait d'avoir un processus en cours d'exécution en arrière-plan qui maintient la main sur les connexions Telnet persistantes et les commandes en attente de descendre eux.

alors le scripts frontal s'y connectent (par ex. Via un socket) à la file d'attente des commandes et obtenir les résultats de manière asynchrone.

Mais cela pourrait être exagéré. Combien de personnes prévoyez-vous utiliser une interface de commutateur simultanément? Une alternative légère pour seulement la partie web de celui-ci serait de garder l'objet de connexion telnet dans les scripts web et configurer le serveur web/passerelle pour ne lancer une instance de votre webapp à la fois.