Finira-t-il de traiter toutes les demandes en cours avant de redémarrer?Phusion Passenger redémarre-t-il normalement quand je touche restart.txt
Répondre
Je suis sous l'impression que chaque instance d'application passager meurt APRÈS traitement d'une demande au lieu de redémarrer AVANT la requête suivante lorsque restart.txt est touché. Il y a donc une latence d'une demande par passager. À mesure que le processus se ferme et que le générateur d'application génère une nouvelle instance, je ne l'appelle pas "gracieux".
Cela signifie que la prochaine requête adressée à une seule instance de votre application recevra une réponse de cette version de l'instance qui se ferme (après avoir effectué son travail). Les demandes en cours ne seront pas détruites.
Réponse courte: oui!
En fait, il permettra à la demande en cours de se terminer et de répondre à une nouvelle demande avec une nouvelle version. J'essaie de trouver une référence à ceci, mais je n'en trouve pas pour l'instant.
"En créant ou en modifiant le fichier tmp/restart.txt dans le dossier racine de l'application Rails, Phusion Passenger redémarre automatiquement l'application lors de la prochaine requête." http://modrails.com/documentation.html –
J'ai lu cette citation en lisant les documents pour répondre à cette question, interprétez-vous ceci comme impliquant qu'il redémarrera gracieusement? Par exemple, terminer toutes les demandes en suspens, puis faire le prochain avec la nouvelle version? – Greg
Oui, c'est ainsi que je l'ai interprété. –
Par gracieux je veux juste dire que chaque demande en cours est terminée sans en laisser tomber. – Greg
Juste modifié ma réponse - il ne laissera pas tomber une instance d'application, ni pendant une demande ni pour la prochaine demande immédiate. – hurikhan77