Heim >Backend-Entwicklung >Golang >So stellen Sie Golang-Dienste unter Linux bereit
Golang ist in den letzten Jahren eine sehr beliebte Programmiersprache. Sie bietet viele Vorteile wie präzisen Code, schnelle Ausführungsgeschwindigkeit und starke Parallelitätsfähigkeiten. Sie wird häufig im Bereich der serverseitigen Entwicklung eingesetzt. In diesem Artikel wird erläutert, wie Golang-Dienste auf Linux-Systemen bereitgestellt werden.
1. Installieren Sie Golang und die erforderlichen Tools.
Bevor Sie Golang-Dienste bereitstellen, müssen Sie zunächst Golang und die erforderlichen Tools installieren. Es kann über den folgenden Befehl installiert werden:
sudo apt-get update sudo apt-get upgrade sudo apt-get install golang sudo apt-get install git
Die letzte Zeile installiert das Git-Tool. Denn Golang-Projekte werden normalerweise über Git versioniert. Nachdem die Installation abgeschlossen ist, können Sie überprüfen, ob die Installation erfolgreich war, indem Sie den folgenden Befehl ausführen:
go version git version
Wenn beide oben genannten Befehle die Versionsnummer ausgeben, bedeutet dies, dass die Installation erfolgreich war.
2. Golang-Dienste schreiben
Nach der Installation von Golang und den erforderlichen Tools können Sie mit dem Schreiben von Golang-Diensten beginnen. Am Beispiel eines einfachen HTTP-Dienstes ist das Folgende ein Codebeispiel:
package main import ( "fmt" "net/http" ) func main() { http.HandleFunc("/", helloHandler) fmt.Println("Server started on port 8080") http.ListenAndServe(":8080", nil) } func helloHandler(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, "Hello, World!") }
Der Dienstcode hat eine einfache Funktion, lauscht auf den lokalen Port 8080 und gibt für jede Anfrage die Zeichenfolge „Hello, World!“ zurück. Verwenden Sie die Methode http.HandleFunc
, um eine Route und eine Handlerfunktion für diese Route anzugeben. http.HandleFunc
方法来指定路由和对该路由的处理函数。
三、构建并测试 Golang 服务
在编写好 Golang 服务代码后,需要进行构建并测试。可以使用以下命令来构建服务:go build
。该命令会在当前目录下生成可执行文件。在测试前,需要先修改一下当前用户的防火墙规则,以允许该服务监听 8080 端口。可以使用以下命令:
sudo ufw allow 8080/tcp
修改完成后,即可启动服务进行测试。可以使用以下命令启动服务:
./<可执行文件名> &
其中的 &
符号表示将服务放在后台运行。启动成功后即可使用浏览器或者 curl
命令来访问该服务。
四、使用 PM2 进行 Golang 服务部署
手动启动 Golang 服务显然不太友好,特别是当需要对该服务进行重启或监控时,更不方便。所以,可以使用 PM2 工具来进行服务的管理和部署。PM2 是一个 Node.js 生态圈中的进程管理工具,不过它也支持管理其他语言编写的进程,包括 Golang。以下是使用 PM2 进行 Golang 服务部署的示例:
sudo npm install -g pm2
pm2 start <可执行文件名> --name=<服务名称>
其中,--name
go build
. Dieser Befehl generiert eine ausführbare Datei im aktuellen Verzeichnis. Vor dem Test müssen Sie die Firewallregeln des aktuellen Benutzers ändern, damit der Dienst Port 8080 überwachen kann. Sie können den folgenden Befehl verwenden: pm2 list
pm2 restart <服务名称> pm2 stop <服务名称> pm2 delete <服务名称>
&
bedeuten, dass der Dienst im Hintergrund ausgeführt wird. Nach erfolgreichem Start können Sie über einen Browser oder den Befehl curl
auf den Dienst zugreifen. Das obige ist der detaillierte Inhalt vonSo stellen Sie Golang-Dienste unter Linux bereit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!