V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
dzdh
V2EX  ›  问与答

为什么很少见一些大型分布式产品使用 mdns 进行服务发现的

  •  
  •   dzdh · 2021-12-30 09:13:09 +08:00 · 1282 次点击
    这是一个创建于 1089 天前的主题,其中的信息可能已经有所发展或是发生改变。

    google 说只适合开发用?

    寻思着内网协议部署在云上也没啥问题呀 跨机房弄个 gre 隧道然后不还是内网么

    5 条回复    2021-12-30 10:30:14 +08:00
    swulling
        1
    swulling  
       2021-12-30 09:15:49 +08:00 via iPhone
    mdns 要求在一个网段里。不是说网络通就可以的
    swulling
        2
    swulling  
       2021-12-30 09:18:13 +08:00 via iPhone
    按照常见的网络建设方案,一个网段里一般只放一个 /24 或者 /25 ,也就是一百多到两百多。

    很少有放更多的机器的,因为大的二层网络故障域过大
    dzdh
        3
    dzdh  
    OP
       2021-12-30 09:25:25 +08:00
    @swulling 那 0-255/0-127 不正好一个网段吗
    swulling
        4
    swulling  
       2021-12-30 09:31:55 +08:00 via iPhone
    @dzdh 网段不是那个意思。

    另外一个故障域也没法组建生产级别的分布式集群
    sujin190
        5
    sujin190  
       2021-12-30 10:30:14 +08:00   ❤️ 1
    服务发现除了要能找到,异常、故障、宕机了也要能让使用方即使知道踢出该节点的啊,这可是双向的,不是单向的啊

    gre 组网如果放在网关上是不能和两个机房在同一网段的,否则会冲突,除非你在每台机器上都配 gre 隧道,这种且不说维护难度太高,而且好好的千兆万兆内网非要搞个隧道,网络性能白白损失你这是要干啥

    再说用 C 网段的话,不是每家公司只会有一两百个节点的,用 A 、B 网段可以组件更大网络,但是关播流量是不是太高了

    最好 mdns 作为系统级服务,也就意味着不止你一个服务会用这东西,其可控性可预知性是不是太弱了,大型分布式系统都是要求高可用高稳定需要持续服务的,你这不是给自己埋坑么,分布式系统都搞出来了,搞个更可靠的服务发现过程又不是啥难事,为啥要用 mdns
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2786 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 14:58 · PVG 22:58 · LAX 06:58 · JFK 09:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.