Spring Cloud Consul 注册丢失 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
jimmyismagic
V2EX    程序员

Spring Cloud Consul 注册丢失

  •  
  •   jimmyismagic 2021-07-16 16:19:54 +08:00 2181 次点击
    这是一个创建于 1553 天前的主题,其中的信息可能已经有所发展或是发生改变。

    项目采用 consul 作为注册中心, 服务跑了一段时间后,某些服务就从注册中心消失,无法被其他服务访问,但服务本身还是正常的,内部直接 /actuator/health 返回的也是 UP

    消失基本都是在服务接收到大量外部连接的时候。

    该怎么排查这个问题,目前没有日志看到服务注册断开。

    11 条回复    2021-07-20 21:50:00 +08:00
    tms
        1
    tms  
       2021-07-16 16:48:31 +08:00
    看 consul 的健康检查日志
    fkdog
        2
    fkdog  
       2021-07-16 16:50:15 +08:00
    info 里没记录那就临时切到 debug 级别看 warning 和 debug 信息.
    th00000
        3
    th00000  
       2021-07-16 17:25:37 +08:00
    线上跑了好久了 没出过你这个问题, Consul 如果健康检查通过应该不会出现摘掉服务的情况
    你访问 health check api 没问题的时间不代表 Consul 访问的时候没问题
    服务流量大的时候 health check api 可能来不及响应
    你应当先查服务的监控, 看当时 CPU 占用是怎样的, JVM 是怎样的, GC 有没有问题, 有没有 STW 时间过长, 超过了 health check 的 timeout
    xuanbg
        4
    xuanbg  
       2021-07-17 07:35:56 +08:00
    应该是你的健康检查某些时候没有响应造成的。我遇到过的是邮件服务的健康检查超时造成服务间歇性下线,后来在配置里面把邮件的健康检查 disable 就好了。
    jimmyismagic
        5
    jimmyismagic  
    OP
       2021-07-19 09:16:17 +08:00
    @xuanbg http 连接过多,没有响应后面就再也连不上了吗?
    @th00000 会有来不及响应的时候,遇到大流量长连接,后面就再也连不上了,会是什么原因呢?
    @tms 没找到日志,可能配置不对
    @fkdog 业务端日志吗?
    th00000
        6
    th00000  
       2021-07-19 10:30:44 +08:00
    @jimmyismagic #5 关于 Consul health check 超时后的重连接, 建议你阅读以下官方文档, 应该都有写
    关于 4 楼的 disable health check 的做法, 在线上环境是万万不可的
    tms
        7
    tms  
       2021-07-19 18:55:22 +08:00
    @jimmyismagic consul 端临时切换到 debug 的 log 级别才能看到 health check 日志。不过根据你说的,估计是代码逻辑造成的问题了,按理来说 health check api 不应该因为其他业务逻辑时间长来不及响应。
    jimmyismagic
        8
    jimmyismagic  
    OP
       2021-07-19 19:17:11 +08:00
    @tms 已知的问题就是连接过多,一旦过多,就会注册丢失,但是问题是,丢失之后就不会有其他连接进来,负载也变小,但就是无法注册上
    NCE
        9
    NCE  
       2021-07-19 19:18:56 +08:00
    看下调用方是否有超时熔断策略。

    我猜测你的服务没有做压力测试就上线了。
    leeyuzhe
        10
    leeyuzhe  
       2021-07-20 13:26:24 +08:00
    检查下是不是有这个配置项 health-check-critical-timeout: 60s
    tms
        11
    tms  
       2021-07-20 21:50:00 +08:00
    @jimmyismagic 首先确认服务是否有主动重新注册,再看 consul 是否拒绝了注册。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     6305 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 02:08 PVG 10:08 LAX 19:08 JFK 22:08
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86