多端口示例
本项目演示了如何使用 Fiber 框架在多个端口上运行 Go 应用程序。
先决条件
请确保已安装以下内容
- Golang
- Fiber 包
设置
-
克隆仓库
git clone https://github.com/gofiber/recipes.git
cd recipes/multiple-ports -
安装依赖
go get
运行应用程序
- 启动应用程序
go run main.go
示例
以下是如何在多个端口上运行 Fiber 应用程序的示例
package main
import (
"log"
"sync"
"github.com/gofiber/fiber/v2"
)
func main() {
app := fiber.New()
app.Get("/", func(c *fiber.Ctx) error {
return c.SendString("Hello, World!")
})
ports := []string{":3000", ":3001"}
var wg sync.WaitGroup
for _, port := range ports {
wg.Add(1)
go func(p string) {
defer wg.Done()
if err := app.Listen(p); err != nil {
log.Printf("Error starting server on port %s: %v", p, err)
}
}(port)
}
wg.Wait()
}
在此示例中
- 应用程序监听多个端口 (
:3000
和:3001
)。 - 使用
sync.WaitGroup
等待所有 goroutine 完成。