Y at-il quelque chose dans Python qui vous permette d'exécuter plusieurs programmes Python simultanés pouvant potentiellement accéder à la même table de base de données et empêcher chaque programme d'utiliser le cpu complet? avoir une capacité supplémentaire restante?Exécution de plusieurs programmes Python simultanés accédant à la même table de base de données
0
A
Répondre
0
Plusieurs questions:
- plusieurs programmes Python simultané - voir http://wiki.python.org/moin/Concurrency, pour le début, je voudrais essayer avec le module builtin multitraitement (http://docs.python.org/2/library/multiprocessing.html)
- accéder à la même table de base de données - chaque processus doit créer votre propre connexion db - après que la concurrence est gérée par/ou configurée dans rdbms et/ou les options de connexion/requête. Si vous avez vraiment besoin de synchroniser les processus, l'utilisation de verrous/sémaphores pourrait vous aider.
- empêchent chaque programme d'utiliser le cpu complet - il dépend de ce que vos processus devraient faire, j'aller avec:
- ayant un programme principal qui court tout le temps (processus maître), ne pauses (time.sleep, gevent.sleep ou similaires) et zones d'apparition et contrôle donné naissance à des processus (travailleurs)
- donné naissance à des processus font le travail (travailleurs) - nouvelle connexion ouverte, faire des actions db et quitter
Je suis sûr que certains flux de travail/systèmes fournis par des modules multiprocesseurs (ou autres) c répondre à vos besoins (Travailleurs, Pools, Files d'attente, Pipes, Etats partagés, Synchronisation, ...).
+0
Merci, aura un long regard. – Superdooperhero
Questions connexes
- 1. Plusieurs programmes mettant à jour la même base de données
- 2. Plusieurs threads Python accédant au même fichier
- 3. Oracle accédant à plusieurs bases de données
- 4. Exécution d'appels d'API simultanés
- 5. Python: Exécution de programmes externes dynamiquement
- 6. Plusieurs utilisateurs accédant à un même ipynb
- 7. Service accédant à une base de données
- 8. Exécution de programmes Java via Python
- 9. Service Web accédant à la base de données client
- 10. Exécution de plusieurs scripts Python
- 11. Android - Exécution de plusieurs instances de base de données
- 12. plusieurs programmes de Run python en même temps
- 13. Connexion de deux programmes C simultanés
- 14. Ajouter une exécution de table dans la base de données
- 15. Liste des utilisateurs accédant à la base de données
- 16. C# Attributs personnalisés accédant à la base de données
- 17. AsyncTask accédant à la base de données - Où initialiser, fermer?
- 18. Service ASP.net accédant à la base de données
- 19. Exécution de plusieurs sockets en même temps en python
- 20. Gestion des envois simultanés sur la base de données
- 21. Daemon et View les deux accédant à la base de données SQLite en même temps
- 22. Exécution de plusieurs lignes en Python
- 23. Exécution d'autres programmes à partir de Java
- 24. PHP plusieurs clients accédant même fichier
- 25. Sélectionner plusieurs valeurs de la même table
- 26. plusieurs sessions accédant à l'ensemble de données et mettant à jour le même enregistrement
- 27. Gérer plusieurs clients simultanés en python
- 28. Plusieurs utilisateurs accédant au même alias BDE, mais accédant à des répertoires différents
- 29. Récupérer des données de la même table plusieurs fois?
- 30. Plusieurs utilisateurs SharePoint 2010 accédant au même problème de liste
Quel logiciel de base de données allez-vous utiliser? – nacholibre
Postgresql serait mon choix de base de données – Superdooperhero
Eh bien essayez-le et vous verrez, les bases de données sont créées pour la lecture et l'écriture simultanées, donc je ne pense pas que vous aurez des problèmes. Le sommeil entre les requêtes peut équilibrer votre charge CPU. – nacholibre