jizhihaoSAMA
V2EX  ›  问与答

一个面试题:微服务 RPC 下,发现使用 TCP 的效率比 UDP 高,可能是什么原因

  •  
  •   jizhihaoSAMA · Mar 30, 2021 · 4449 views
    This topic created in 2048 days ago, the information mentioned may be changed or developed.

    今天翻面经翻到了一个这个题,我想了一下,好像还是没啥头绪,百度一下也没一个答案,有大佬帮忙解答下吗,谢谢了。

    16 replies  •  2021-03-31 11:39:09 +08:00
    xupefei
    xupefei
    Mar 30, 2021 via iPhone❤️1
    1
    这题也太模糊了。一种可能性是 udp 被运营商 qos 了。
    sagaxu
    sagaxu
    Mar 30, 2021 via Android❤️1
    2
    自己实现的 udp 可靠性不如内核性能高
    Ariver
    Ariver
    Mar 30, 2021
    3
    tcp 连接被复用了。
    并不是每次连接都三次握手?
    Jooooooooo
    Jooooooooo
    Mar 30, 2021
    4
    效率指的是什么?
    akira
    akira
    Mar 30, 2021
    5
    即使 tcp 连接复用,也应该是 tcp 的性能更好的。

    猜测可能是海量的数据碎片的情况下,这种情况下 udp 表现可能会没有 tcp 的好
    mhycy
    mhycy
    Mar 30, 2021❤️2
    6
    需要看 UDP 如何实现拥塞控制与丢包重传,这是和底层实现相关的问题
    如果 UDP 没有实现拥塞控制只实现丢包重传的话
    那么在大数据量的情况下,数据会因为溢出缓冲区或者拥堵丢包而等待重传,此过程会引入延迟

    具体情况具体分析,没有细节只能泛泛而谈的题目
    跟连接复用关系不大,因为 UDP 也能实现复用(自己实现上层的拥塞控制逻辑基础上再实现复用逻辑)
    killergun
    killergun
    Mar 30, 2021
    7
    TCP 包合并发送? UDP 没有这个
    drackzy
    drackzy
    Mar 30, 2021
    8
    tcp 可以 bbr
    watzds
    watzds
    Mar 30, 2021 via Android
    9
    Rpc 还有用 udp 实现的吗,孤陋寡闻了
    shyrock
    shyrock
    Mar 30, 2021
    10
    可能的原因就是这人不会用 udp,否则你 tcp 的任何优化机制我 udp 都可以纳为己用,没道理比不过。
    GGGG430
    GGGG430
    Mar 30, 2021
    11
    效率高是指? 如果这公司真在线上 rpc 用 udp, 我劝你别去这家公司
    p2pCoder
    p2pCoder
    Mar 30, 2021
    12
    @watzds quic/http3 算吗
    zls3201
    zls3201
    Mar 30, 2021
    13
    完全是内网? 还是在公网? tcp 是稳定连接 建立后 通讯数据包更小 快一些没问题 长连接比 udp 通讯效率高 不是很正常吗 都不知道 你们在争啥
    GGGG430
    GGGG430
    Mar 30, 2021
    14
    @zls3201 都不知道你在说啥, tcp 稳定后比 udp 快一些? 知道拥塞控制吗? 网络风暴呢?
    GBdG6clg2Jy17ua5
    GBdG6clg2Jy17ua5
    Mar 31, 2021 via iPhone
    15
    微服务,我们说 tcp 比 udp 效率应该是服务器之间建立长链接了
    @Ariver 虽然不用每次建立长链接。但 tcp 每次传输数据,都要返回确认,而 udp 不需要。理论上,tcp 是不可能比 udp 效率高的
    zqx
    zqx
    Mar 31, 2021 via Android
    16
    tcp 需要根据滑动窗口大小来控制流量,还要重传,怎么可能比 udp 快?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   674 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 20:25 · PVG 04:25 · LAX 12:25 · JFK 15:25
    ♥ Do have faith in what you're doing.