Heim  >  Artikel  >  Backend-Entwicklung  >  So führen Sie ein Hot-Update in Golang durch

So führen Sie ein Hot-Update in Golang durch

(*-*)浩
(*-*)浩Original
2019-12-31 13:27:295445Durchsuche

So führen Sie ein Hot-Update in Golang durch

Der http-Teil der Golang-Standardbibliothek bietet leistungsstarke Webanwendungsunterstützung. In Verbindung mit der Unterstützung von Middleware-Frameworks wie Negroni können leistungsstarke Webanwendungen entwickelt werden (z. B wie der API-Dienst von Restful usw.).                                                                                                                                                                                                     Als Reverse-Proxy erreichen Sie Clusterdienste mit hoher Verfügbarkeit. Wie kann bei einem Upgrade der Anwendungsversion ein eleganteres Update der polymorphen Serverversion implementiert werden?

Problemanalyse

Bei der Aktualisierung der Webanwendung gibt es meiner Meinung nach möglicherweise mehrere Probleme, die berücksichtigt werden müssen:

Kompilieren Die Binärdateien und Konfigurationsdateien der Anwendung werden auf den Server hochgeladen. Der Anwendungsserver kann erkennen, dass eine neue Version hochgeladen wird.

Hot-Update der Version, ohne den Dienst zu stoppen

Es ist am besten, alle Update-Prozesse per Skript auszuführen, um manuelle Fehler zu reduzieren.

Lösung

Tatsächlich gibt es in der Go-Community einige Open-Source-Projekte, die Änderungen in Webanwendungen automatisch erkennen und automatische Updates implementieren können, aber diese Anwendungen erkennen alle Quellcode , Aktualisieren Sie die Ressourcendateien, starten Sie den Erstellungsprozess und implementieren Sie die automatische Kompilierung und den Neustart.

Diese Anwendungen eignen sich beispielsweise für den Einsatz in der Entwicklungs- und Testphase. Sie sind möglicherweise nicht für die Bereitstellung und Aktualisierung von Anwendungen geeignet, liefern aber gute Ideen.

Verzeichnis und Version der Bereitstellungsumgebung hochladen

Ich werde die freigegebenen Anwendungsbinärdateien und Konfigurationsdateien in einem bestimmten Verzeichnis speichern, z. B. ~/app/release , jede Version wird in diesem Verzeichnis aufbewahrt, z. B. app.1.0, app.1.1, app.2.0. Sobald ein Problem gefunden wird, kann es rechtzeitig zurückgesetzt werden

Das obige ist der detaillierte Inhalt vonSo führen Sie ein Hot-Update in Golang durch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn