Comment puis-je faire que uWSGI redémarre lorsqu'un script Python est modifié?

Je ne me souviens pas où, mais je lis que uWSGI peut se recharger comme server de développement Django lorsqu'un script de projet est modifié. Je ne peux pas le find dans les docs , ni dans les Internet. Comment puis-je faire ceci?

J'utilise Ubuntu 12.04 sur mes machines de travail et Debian Squeeze sur scène et server de production, Django 1.4 et uWSGI 1.2.

Référence: http://projects.unbit.it/uwsgi/wiki/Management

Si vous avez commencé uwsgi avec l' --touch-reload=/path/to/special/file/usually/the.ini , le rechargement de votre uWSGI est une simple question de rechargement de ce file avec

touch /path/to/special/file/usually/the.ini

Et si vous voulez la capacité "autoreload", c'est le conseil qui se fait: http://projects.unbit.it/uwsgi/wiki/TipsAndTricks#uWSGIdjangoautoreloadmode

Il existe une option py-autoreload=N dans les nouvelles versions. Ajustez N à la fréquence (en secondes) des controls (3 est une bonne valeur).

Si vous ne voulez pas perdre la command autorisée django, enregistrez cette méthode de rechargement (c.-à-d. Dans settings.py):

 import uwsgi from uwsgidecorators import timer from django.utils import autoreload @timer(3) def change_code_gracefull_reload(sig): if autoreload.code_changed(): uwsgi.reload() 

Maintenant, si vous modifiez votre code, il sera rechargé.

Auteur: Simone Federici