首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  DevOps

弱弱问一下,为何 etcd 使用 HTTP+Json 而不是 TCP 或者 UDP 呢?前者不是更消耗带宽么?

  •  
  •   qq446015875 · 2015-04-02 14:24:44 +08:00 · 2961 次点击
    这是一个创建于 1538 天前的主题,其中的信息可能已经有所发展或是发生改变。
    6 回复  |  直到 2015-04-02 17:25:47 +08:00
        1
    eric   2015-04-02 15:08:11 +08:00
    对于这种一般跑在内网的应用瓶颈不会出现在带宽上,再造一套轮子的意义不大。
        2
    Septembers   2015-04-02 15:37:44 +08:00 via Android
    延时问题 比 带宽开销问题 更大
        3
    bearice   2015-04-02 15:41:55 +08:00
    http可以直接用curl做客户端,在shell里写也基本上没问题。
    你用bash弄一个UDP客户端试试(ry
        4
    suriv520   2015-04-02 15:47:17 +08:00   ♥ 1
    用Go写的etcd,在初期是非常需要一个友好的接口与周边生态的,这利于它的发展与推广。
    正因为用了http/json,无论是php/ruby/python甚至bashshell的curl wget,都能轻松地与之协作。开发人员几乎不需要阅读文档,只需要扫一眼http示例,就能够轻松的集成进去。
    使用tcp/udp,就需要一整套通讯协议了,就需要各种不同语言的sdk了,就需要维护各种版本细节了……费力不讨好。

    不过说回来,etcd很有可能在以后的版本中,内部通信使用纯tcp,但并不是因为带宽问题,而是延时问题。不过对外服务,http是肯定支持到底了。
        5
    qq446015875   2015-04-02 17:21:02 +08:00
    @suriv520 嗯……明白了……谢谢!
        6
    Livid   V2EX Moderator   2015-04-02 17:25:47 +08:00 via iPhone
    用 curl 调试会很方便
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3310 人在线   最高记录 5043   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 18ms · UTC 04:42 · PVG 12:42 · LAX 21:42 · JFK 00:42
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1