2014-07-15 5 views
1

Je suis assez compétent avec Python mais je n'ai jamais "téléchargé de code" sur un serveur auparavant et je l'ai exécuté automatiquement.Téléchargement de code sur le serveur et exécution automatique

Je travaille sur un projet qui nécessiterait que du code soit exécuté 24/7. À certains moments de la journée, si un critère est rempli, un processus est lancé. Par exemple: une base de données peut contenir des enregistrements de l'heure à laquelle chaque utilisateur veut recevoir un bulletin quotidien (pour une raison subjective) - le code enverrait le bulletin à la bonne personne au bon moment de la journée. Mais bien sûr, tout cela est épuisé sur un serveur Cloud.

Toute aide serait appréciée - même en corrigeant toute ma formulation du problème! Si vous savez comment le faire dans une autre langue, veuillez répondre avec vos solutions!

Merci!

+0

s'il vous plaît fournir plus d'informations tel système d'exploitation, type de serveur de base de données, etc – Moes

+0

Hey mon pote, comme je l'ai dit je suis assez nouveau à ce genre de choses, donc je ne sais même pas quel type de serveur j'aurais pour télécharger le code afin qu'il s'exécute automatiquement. – sobabe09

Répondre

1

Voici deux approches de ce problème, qui nécessitent toutes deux l'accès shell au serveur cloud.

  1. Écrivez le programme pour gérer la planification elle-même. Par exemple, dormez et réveillez-vous toutes les quelques millisecondes pour effectuer les vérifications nécessaires. Vous devez ensuite transférer ce fichier sur le serveur en utilisant un outil comme scp, connectez-vous, et démarrez-le en arrière-plan en utilisant quelque chose comme python myscript.py &.

  2. Écrivez le programme pour effectuer une seule exécution et utilisez l'outil de planification cron pour le démarrer chaque minute de la journée.

+0

'nohup' empêche de tuer le processus lors de la fermeture du shell. Voir aussi supervisord –

1

J'ai passé quelques jours mais j'ai finalement trouvé un moyen de résoudre ce problème. Le moyen le plus pratique pour que cela fonctionne est d'utiliser un VPS qui exécute le script. La partie confuse de mon code était que chaque utilisateur activerait le script à un moment différent pour eux-mêmes. Pour ce faire, disons à minuit, le VPS exécute le script python (en utilisant des tâches planifiées ou quelque chose de similaire) et exécute le script. le script tirerait alors des temps d'une base de données et traiterait le code aux moments décrits.

Merci pour votre temps de toute façon!

Questions connexes