V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
dzdh
V2EX  ›  问与答

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

  •  
  •   dzdh · Dec 30, 2021 · 1638 views
    This topic created in 1592 days ago, the information mentioned may be changed or developed.

    google 说只适合开发用?

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

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

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

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

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

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

    最好 mdns 作为系统级服务,也就意味着不止你一个服务会用这东西,其可控性可预知性是不是太弱了,大型分布式系统都是要求高可用高稳定需要持续服务的,你这不是给自己埋坑么,分布式系统都搞出来了,搞个更可靠的服务发现过程又不是啥难事,为啥要用 mdns
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3292 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 14:10 · PVG 22:10 · LAX 07:10 · JFK 10:10
    ♥ Do have faith in what you're doing.