run_server.go 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package core
  2. import (
  3. "eta_gn/eta_obs/global"
  4. "eta_gn/eta_obs/init_serve"
  5. "eta_gn/eta_obs/services/oss"
  6. "fmt"
  7. "github.com/tylerb/graceful"
  8. "net/http"
  9. "time"
  10. )
  11. func RunServe() {
  12. // 初始化路由
  13. r := init_serve.InitRouter()
  14. // 初始化minio
  15. oss.InitMinio()
  16. // 启动任务
  17. init_serve.InitTask()
  18. fmt.Println("port:", global.CONFIG.Serve.Port)
  19. //err := r.Run(fmt.Sprint("0.0.0.0:", global.CONFIG.Serve.Port)) // 监听并在 0.0.0.0:8080 上启动服务
  20. //if err != nil {
  21. // panic(fmt.Errorf("服务启动失败,Err:%s", err))
  22. //} else {
  23. // fmt.Println("Run:", fmt.Sprint("0.0.0.0:", global.CONFIG.Serve.Port))
  24. //}
  25. // 创建一个 HTTP 服务器
  26. server := &http.Server{
  27. Addr: fmt.Sprint("0.0.0.0:", global.CONFIG.Serve.Port),
  28. Handler: r,
  29. //ReadTimeout: 10 * time.Second,
  30. //WriteTimeout: 10 * time.Second,
  31. }
  32. // 使用 grace 启动服务器
  33. gracefulServer := &graceful.Server{
  34. Timeout: 10 * time.Second, // 设置超时时间
  35. Server: server,
  36. }
  37. // 启动服务器
  38. if err := gracefulServer.ListenAndServe(); err != nil {
  39. panic(fmt.Errorf("服务启动失败,Err:%s", err))
  40. } else {
  41. fmt.Println("Run:", fmt.Sprint("0.0.0.0:", global.CONFIG.Serve.Port))
  42. }
  43. }