| | |
| | | import ( |
| | | "aps_crm/conf" |
| | | "aps_crm/initialize" |
| | | "aps_crm/middleware" |
| | | "aps_crm/model" |
| | | "aps_crm/model/grpc_init" |
| | | "aps_crm/pkg/logx" |
| | | "aps_crm/proto/client" |
| | | "aps_crm/proto/crm_aps" |
| | | "aps_crm/proto/product_inventory" |
| | | "aps_crm/router" |
| | | "fmt" |
| | | "google.golang.org/grpc" |
| | | "net" |
| | | "net/http" |
| | | "os" |
| | | "os/signal" |
| | |
| | | ReadTimeout: 5 * time.Second, |
| | | WriteTimeout: 5 * time.Second, |
| | | } |
| | | //启动grpc客户端 |
| | | go middleware.InitUserConn() |
| | | go grpc_init.InitProductInventoryServiceConn() |
| | | go grpc_init.InitCrmApsGrpcServiceConn() |
| | | //启动grpc服务 |
| | | go func() { |
| | | ln, err := net.Listen("tcp", ":"+conf.Conf.System.GrpcPort) |
| | | if err != nil { |
| | | logx.Errorf("grpc server init error: %v", err.Error()) |
| | | panic(fmt.Sprintf("grpc server init error: %v", err.Error())) |
| | | } |
| | | s := grpc.NewServer() |
| | | //todo 添加具体服务 |
| | | product_inventory.RegisterProductInventoryServiceServer(s, &product_inventory.Server{}) |
| | | crm_aps.RegisterCrmAndApsGrpcServiceServer(s, &crm_aps.Server{}) |
| | | client.RegisterClientServiceServer(s, &client.Server{}) |
| | | err = s.Serve(ln) |
| | | if err != nil { |
| | | logx.Errorf("grpc server init error: %v", err.Error()) |
| | | panic(fmt.Sprintf("grpc server init error: %v", err.Error())) |
| | | } |
| | | }() |
| | | |
| | | middleware.InitRefreshUserManager(5, 5, 3600) |
| | | middleware.RunRefreshUser() ///定时对活跃用户更新用户详情 |
| | | |
| | | logx.Error(server.ListenAndServe().Error()) |
| | | } |
| | | |
| | |
| | | signal.Notify(quit, syscall.SIGKILL, syscall.SIGQUIT, syscall.SIGINT, syscall.SIGTERM) |
| | | <-quit |
| | | |
| | | logx.Infof("aps-admin exited...") |
| | | middleware.StopRefreshUser() |
| | | grpc_init.CloseProductInventoryServiceConn() |
| | | middleware.CloseUserConn() |
| | | grpc_init.CloseCrmApsGrpcServiceConn() |
| | | |
| | | logx.Infof("aps-crm exited...") |
| | | os.Exit(0) |
| | | } |