main.go 926 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package main
  2. import (
  3. "AT-Server/server"
  4. "AT-Server/services"
  5. "context"
  6. "fmt"
  7. "github.com/gogf/gf/frame/g"
  8. "github.com/gogf/gf/os/glog"
  9. "github.com/gogf/gf/os/gproc"
  10. rpcx "github.com/smallnest/rpcx/server"
  11. "os"
  12. )
  13. func main() {
  14. err := glog.SetLevelStr(g.Cfg().GetString("Server.RunMode"))
  15. if err != nil {
  16. panic(err)
  17. }
  18. ctx := context.Background()
  19. srv := server.NewServer(
  20. ctx,
  21. g.Cfg().GetString("Server.Addr"),
  22. g.Cfg().GetInt("Server.Port"),
  23. )
  24. go func() {
  25. _ = srv.Start()
  26. }()
  27. s := rpcx.NewServer()
  28. if err = s.Register(services.NewATService(srv), ""); err != nil {
  29. panic(err)
  30. }
  31. go func() {
  32. addr := g.Cfg().GetString("RPC.Addr")
  33. port := g.Cfg().GetInt("RPC.Port")
  34. glog.Printf("RPC服务启动: [%s:%d]", addr, port)
  35. _ = s.Serve("tcp", fmt.Sprintf("%s:%d", addr, port))
  36. }()
  37. gproc.AddSigHandlerShutdown(func(sig os.Signal) {
  38. _ = srv.Stop()
  39. _ = s.Shutdown(ctx)
  40. })
  41. gproc.Listen()
  42. }