main.go 777 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package main
  2. import (
  3. "app.yhyue.com/BP/servicerd/proto"
  4. "flag"
  5. "google.golang.org/grpc"
  6. "log"
  7. "net"
  8. )
  9. var (
  10. addr = flag.String("addr", ":10021", "监听地址")
  11. serviceTtl = flag.Int64("ttl", 30, "服务失效时间(秒)")
  12. )
  13. func init() {
  14. flag.Parse()
  15. }
  16. //
  17. func main() {
  18. //失效服务检查
  19. go ClearTimeoutService(*serviceTtl)
  20. InitDb()
  21. //监听端口
  22. lis, err := net.Listen("tcp", *addr)
  23. if err != nil {
  24. log.Fatalln(err.Error())
  25. return
  26. }
  27. //创建一个grpc 服务器
  28. s := grpc.NewServer()
  29. //注册事件
  30. //1.服务器负载
  31. proto.RegisterServerLoadServer(s, &ServerLoad{})
  32. //2.服务心跳
  33. proto.RegisterHeartBeatServer(s, &Heartbeat{})
  34. //3.服务治理
  35. proto.RegisterServiceServer(s, &Service{})
  36. //处理链接
  37. _ = s.Serve(lis)
  38. }