knowledge.go 1.0 KB

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