开发者社区 > 云原生 > 微服务 > 正文

MSE微服务引擎nacos-go,客户端,这个100Ms的作用是什么呢?

MSE微服务引擎nacos-go,客户端,这个100Ms的作用是什么呢?5a821cd9e85a271e41873597242449b3.jpg

展开
收起
三分钟热度的鱼 2023-09-04 19:20:19 105 0
5 条回答
写回答
取消 提交回答
  • if err != nil {  
        logger.Warnf("send connectionSetupRequest error:%v", err)  
        time.Sleep(100 * timeMillisecond)  
        return err  
    }
    

    如果发送请求时出现错误,这段代码会记录一个警告日志,然后使当前线程暂停100毫秒(可能是为了重试或其他操作),最后返回这个错误。

    2023-10-26 07:59:57
    赞同 1 展开评论 打赏
  • time.Sleep(100 * time.Millisecond),它的作用是暂停当前goroutine的执行100毫秒。这段时间内,当前goroutine将不会继续执行任何代码,而是将控制权让给其他goroutine或等待指定的时间。

    2023-10-24 21:48:12
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    代码中,time.Sleep(100 * time.Millisecond) 这一行代码的作用是让程序暂停 100 毫秒。这里的 100Ms 是一个延迟,它可以让程序在发送连接设置请求后,暂停一段时间,然后再继续执行后续的代码。

    这个延迟可以用于处理一些网络抖动或者异常情况,比如当网络连接不稳定或者服务器响应缓慢时,程序可以暂停一段时间,等待网络连接恢复或者服务器响应完成,然后再继续执行后续的代码

    2023-10-17 21:51:35
    赞同 展开评论 打赏
  • 在MSE微服务引擎nacos-go客户端中,这个100(Mstime.Sleep(100 time.Millisecond) return err)的作用是控制重试机制。当客户端发送请求时,如果出现错误,客户端会等待一段时间后再次尝试发送请求,以避免频繁的重试导致服务器负载过大。这个100(Mstime.Sleep(100 time.Millisecond) return err)就是用来控制等待时间的。如果客户端在重试期间仍然无法发送请求,它将返回错误。

    2023-10-16 14:23:08
    赞同 展开评论 打赏
  • 这个客户端在社区维护的,如果遇到问题可以开issue。
    看起来是建连接的等待,防止拒绝连接异常导致无等待的重试把cpu吃满。此回答整理自钉群“MSE微服务引擎用户交流群(答疑查看群公告底部指引)”

    2023-09-04 19:31:14
    赞同 展开评论 打赏

为微服务建设降本增效,为微服务落地保驾护航。

相关产品

  • 微服务引擎
  • 相关电子书

    更多
    《MSE 微服务网关》 立即下载
    微服务引擎 MSE 治理中心重磅发布 立即下载
    阿里云微服务引擎 MSE 2.0 线上发布 立即下载