bxcore.go 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package main
  2. import (
  3. MC "app.yhyue.com/moapp/jybase/common"
  4. "app.yhyue.com/moapp/jybase/endless"
  5. "fmt"
  6. IC "jyBXBase/api/init"
  7. "log"
  8. "os"
  9. "os/signal"
  10. "syscall"
  11. "bp.jydev.jianyu360.cn/BaseService/gateway/core/node"
  12. "github.com/zeromicro/go-zero/rest"
  13. "jyBXBase/api/internal/handler"
  14. "jyBXBase/api/internal/svc"
  15. )
  16. func main() {
  17. //注册代理服务
  18. closeNotify, err := node.NewNode(IC.C.Gateway.Etcd...).Register(IC.C.Gateway.ServerCode, MC.InterfaceToStr(IC.C.Port))
  19. if err != nil {
  20. panic(err)
  21. }
  22. go func() {
  23. err := endless.ListenAndServe(":"+MC.InterfaceToStr(IC.C.Webrpcport), nil, func() {})
  24. if err != nil {
  25. log.Println("ListenAndServe: ", err)
  26. }
  27. }()
  28. ctx := svc.NewServiceContext(IC.C)
  29. server := rest.MustNewServer(IC.C.RestConf)
  30. defer server.Stop()
  31. handler.RegisterHandlers(server, ctx)
  32. fmt.Printf("Starting server at %s:%d...\n", IC.C.Host, IC.C.Port)
  33. server.Start()
  34. quit := make(chan os.Signal, 1)
  35. signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM)
  36. <-quit
  37. closeNotify()
  38. }