2016-09-11 5 views
-2

Ich habe eine Website (panicselect.com), und ich habe einige Änderungen an der Python-Code gemacht, die ich auf Github geschoben und dann auf meinen Server gezogen, der scheint erfolgreich zu sein. Ich habe versucht, den Server neu zu starten, aber es scheint immer noch meine ältere Version des Codes zu laufen, obwohl ich die neue Version erfolgreich gezogen habe. Ich glaube, da einige "Champions" noch fehlen und die Bewertung scheint auf die alte Art und Weise berechnet zu sein, was im Gegensatz zu dem steht, was auf meinem localhost ist. Hast du eine Vorstellung davon, was das sein könnte? Ich benutze Ubuntu Linux auf Digital Ocean mit sendfile aus und nginx verwendet Uwsgi, um den Py-Code auszuführen.Nginx - Scheint, alte Python-Skripte zu laufen

Antwort

1

voll Um zu bestimmen, wie sich Änderungen an dem Produktionsserver zu implementieren, müssen Sie 2 Dinge verstehen:

1. Die meisten WSGI-Server (einschließlich uwsgi) wird Code beim Start geladen werden, nicht bei jeder Ausführung.

Das bedeutet, dass Änderungen in Ihrem Code nicht sofort wiedergegeben werden, da der alte Code immer noch in Ihren WSGI-Server geladen wird. Es unterscheidet sich von der PHP-Ausführung, wo Code bei jeder Anfrage neu geladen wird. Das bedeutet, dass Sie Ihren WSGI-Server neu starten müssen, wenn der neue Code geladen werden soll.

2. WSGI und nginx sind NICHT

Ja, im Zusammenhang nginx Ihren WSGI Server Außenwelt verbinden, aber das ist es! Es verwaltet Ihren WSGI-Server nicht. Das bedeutet, dass Sie Ihren WSGI-Server manuell neu starten müssen. Der Neustart von nginx verursacht das nicht.

Auch hier ist es gut zu beachten: ein Neustart von nginx ist nicht erforderlich, es sei denn, Sie haben die nginx-Konfiguration geändert.

Verwandte Themen