usercenter.go 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. package main
  2. import (
  3. "flag"
  4. "fmt"
  5. "log"
  6. "net"
  7. "net/http"
  8. "net/rpc"
  9. "bp.jydev.jianyu360.cn/BaseService/userCenter/entity"
  10. _ "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/internal/config"
  11. _ "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/internal/db"
  12. "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/internal/server"
  13. "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/internal/svc"
  14. "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/pb"
  15. "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/timetask"
  16. "github.com/zeromicro/go-zero/core/logx"
  17. "github.com/zeromicro/go-zero/core/service"
  18. "github.com/zeromicro/go-zero/zrpc"
  19. "google.golang.org/grpc"
  20. "google.golang.org/grpc/reflection"
  21. )
  22. func main() {
  23. /* calc := new(entity.JyUser) //新建Args类型实例
  24. rpc.Register(calc) //调用rpc.Register()函数进行注册
  25. rpc.HandleHTTP() //调用rpc.HandleHTTP()
  26. listener, e := net.Listen("tcp", "localhost:8081") //使用net包监听端口
  27. if e != nil {
  28. log.Fatal("Starting RPC-server -listen error:", e)
  29. }
  30. go http.Serve(listener, nil) //新建协程提供对外服务
  31. time.Sleep(1000e9)*/
  32. flag.Parse()
  33. ctx := svc.NewServiceContext(entity.ConfigJson)
  34. svr := server.NewUserCenterServer(ctx)
  35. // logx 根据配置初始化
  36. logx.MustSetup(entity.ConfigJson.Logx)
  37. go func() {
  38. frpc := new(entity.JyUser)
  39. rpc.Register(frpc)
  40. rpc.HandleHTTP()
  41. lis, err := net.Listen("tcp", ":"+entity.ConfigJson.RpcPort)
  42. if err != nil {
  43. log.Fatalln("listen rpc error", err)
  44. } else {
  45. go http.Serve(lis, nil)
  46. }
  47. }()
  48. s := zrpc.MustNewServer(entity.ConfigJson.RpcServerConf, func(grpcServer *grpc.Server) {
  49. pb.RegisterUserCenterServer(grpcServer, svr)
  50. if entity.ConfigJson.Mode == service.DevMode || entity.ConfigJson.Mode == service.TestMode {
  51. reflection.Register(grpcServer)
  52. }
  53. })
  54. defer s.Stop()
  55. go timetask.Run()
  56. fmt.Printf("Starting rpc server at %s...\n", entity.ConfigJson.ListenOn)
  57. s.Start()
  58. }