实例 down 掉, eureka 要 90s 后才剔除,那么期间的被打到这台实例的请求是不是就挂了? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yedra
V2EX    Java

实例 down 掉, eureka 要 90s 后才剔除,那么期间的被打到这台实例的请求是不是就挂了?

  •  
  •   yedra 2022-03-02 12:57:09 +08:00 3785 次点击
    这是一个创建于 1321 天前的主题,其中的信息可能已经有所发展或是发生改变。
    16 条回复    2022-03-03 15:05:37 +08:00
    zhaorunze
        1
    zhaorunze  
       2022-03-02 13:09:10 +08:00
    有负载均衡呢,挂了不会请求其他机器么
    nicholasxuu
        2
    nicholasxuu  
       2022-03-02 13:23:33 +08:00
    health check 失败时不就可以直接被路由给踢了吗?
    fkdog
        3
    fkdog  
       2022-03-02 13:35:20 +08:00
    是的呢。
    各个 service 也是定期从 eureka 获取最新的服务可以用 ip 列表,然后本地按照一定的策略去访问。
    如果某个服务 A 挂了,B 服务本地从 eureka 获取的 A 服务 ip 列表还没更新,那么也是会出现访问到已经 down 机的那个 ip 上。

    要么做好服务 fallback ,要么做好故障转移
    fkdog
        4
    fkdog  
       2022-03-02 13:37:17 +08:00
    另外补充一下,有些注册中心用的是 push 模式,有的用的 pull ,有的用的长链接轮训。 主动 push 和长链接轮训的这种,如果 B 能优雅停机,那么 A 是能及时获取到最新的服务列表。

    如果 B 异常 down 机或者网络故障,那么 A 依然还是要做好回退策略的。
    murenx
        5
    murenx  
       2022-03-02 14:00:54 +08:00
    CAP 理论背书,分布式系统中注册中心必有,至于 A 和 C ,根据侧重点不同选取。eureka 就是保证了 AP ,至于 C ,通过重试,回退,幂等,分布式事务等策略进行处理
    dalang
        6
    dalang  
       2022-03-02 14:01:33 +08:00
    90 秒这个时间是可以调的。
    murenx
        7
    murenx 
       2022-03-02 14:02:04 +08:00
    eureka 是 AP
    ZooKeeper 是 CP
    nacos 不仅支持 CP 也支持 AP
    liyunyang
        8
    liyunyang  
       2022-03-02 16:50:45 +08:00
    paradoxs
        9
    paradoxs  
       2022-03-02 16:52:11 +08:00
    90 秒不是固定的

    直接换 nacos+sential
    twogoods
        10
    twogoods  
       2022-03-02 19:00:31 +08:00
    搜一下 eureka 服务优雅下线
    sun1993
        11
    sun1993  
       2022-03-02 19:14:46 +08:00
    P2C 负载均衡算法,可以主动将坏节点降权,并规律性重试,这个机制有点类似熔断
    starrynight9
        12
    starrynight9  
       2022-03-02 22:47:08 +08:00   1
    每个请求是由服务的 ribbon 组件进行处理的。默认请求失败之后会重试下一台实例,所以在外部看来就是可能会卡了一下。如果请求幂等的话,是没啥问题的
    plko345
        13
    plko345  
       2022-03-02 23:17:15 +08:00
    @twogoods 这个是主动下线, 假设情况是服务的一个副本意外故障呢, 怎么在短时间内(如 5 秒内)让该服务自动下线
    twogoods
        14
    twogoods  
       2022-03-03 09:50:20 +08:00
    @plko345 #13 意外故障也分情况 是不是 unhealth 了会不会同步到 eureka,能不能代业务上判断加个钩子实现主动 shutdown,又或者不强依赖实例下线,调用方重试行不行,又或者负载均衡算法根据错误率权重来选择实例
    Chinsung
        15
    Chinsung  
       2022-03-03 11:38:46 +08:00
    重试配置好,直接 try 下一台机器就行了,当次请求的延迟可能会高一点
    要么就检测实例 down 了就发 eureka 接口手动下线
    wujiezero
        16
    wujiezero  
       2022-03-03 15:05:37 +08:00
    负载均衡策略可以设置请求不发往 down 掉的实例
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2975 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 54ms UTC 13:49 PVG 21:49 LAX 06:49 JFK 09:49
    Do have faith in what you're doing.
    ubao 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