usercenter.go 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. package main
  2. import (
  3. "flag"
  4. "fmt"
  5. "os"
  6. "os/signal"
  7. "syscall"
  8. "bp.jydev.jianyu360.cn/BaseService/gateway/core/node"
  9. "github.com/zeromicro/go-zero/core/conf"
  10. "github.com/zeromicro/go-zero/core/logx"
  11. "github.com/zeromicro/go-zero/rest"
  12. "github.com/zeromicro/go-zero/zrpc"
  13. "userCenter/api/internal/config"
  14. "userCenter/api/internal/handler"
  15. "userCenter/api/internal/svc"
  16. "userCenter/entity"
  17. "userCenter/rpc/usercenter"
  18. )
  19. var configFile = flag.String("f", "etc/usercenter-api.yaml", "the config file")
  20. func main() {
  21. var c config.Config
  22. conf.MustLoad(*configFile, &c)
  23. // logx 根据配置初始化
  24. logx.MustSetup(c.Logx)
  25. //前置代理相关
  26. var serverCode string = "usercenter"
  27. var serverPort int = c.Port
  28. closeNotify, err := node.NewNode(c.GatewayRpcConf.Etcd.Hosts[0]).Register(serverCode, fmt.Sprintf("%d", serverPort))
  29. if err != nil {
  30. panic(err)
  31. }
  32. flag.Parse()
  33. ctx := svc.NewServiceContext(c)
  34. server := rest.MustNewServer(c.RestConf)
  35. defer server.Stop()
  36. entity.UserCenterRpc = usercenter.NewUserCenter(zrpc.MustNewClient(c.UserCenterRpcConf))
  37. handler.RegisterHandlers(server, ctx)
  38. fmt.Printf("Starting server at %s:%d...\n", c.Host, c.Port)
  39. server.Start()
  40. quit := make(chan os.Signal, 1)
  41. signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM)
  42. <-quit
  43. closeNotify()
  44. }