tx7do / kratos-transport

kratos transport layer extension
MIT License
348 stars 95 forks source link

endpoint 实现逻辑是否有问题 #70

Closed zoulux closed 7 months ago

zoulux commented 10 months ago
func (s *KeepAliveService) generateEndpoint() error {
    if s.endpoint != nil {
        return nil
    }

    for {
        port := s.generatePort(10000, 65535)
        addr := fmt.Sprintf(":%d", port)
        lis, err := net.Listen("tcp", addr)
        if err == nil && lis != nil {
            s.lis = lis
            endpoint, _ := url.Parse("tcp://" + addr)
            s.endpoint = endpoint
            return nil
        }
    }
}

这样子注册到注册中心时变成 tcp://:47946 ,这样的地址在 consul 那边是无法进行 check health 的