【问题标题】:Erlang gen_tcp delaying sendErlang gen_tcp 延迟发送
【发布时间】:2012-09-21 08:22:25
【问题描述】:

我将以下代码作为 Erlang Web 服务器的一部分用于许多长期并发连接。

SockOpts = [
    binary,
    {active, false},
    {packet, http_bin},
    {reuseaddr, true},
    {packet_size, 16384},
    {recbuf, 16384},
    {backlog, 100},

    {delay_send, false},
    {nodelay, true}
],
gen_tcp:listen(Port, SockOpts)

尽管我添加了delay_sendnodelay 选项,但它似乎正在缓冲数据,因此在发送更大的数据块或服务器被终止之前不会发送小块数据。为什么会这样,如何强制它立即发送所有数据?

【问题讨论】:

  • 你为什么说:“看起来”?你如何测试这个?

标签: erlang gen-tcp


【解决方案1】:

原来是 iPad 客户端中的 NSURLConnection 缓冲数据,而不是立即传递。

我切换到 CFNetwork,这很有趣。

【讨论】:

    猜你喜欢
    • 2012-04-02
    • 2018-04-11
    • 1970-01-01
    • 2014-03-29
    • 1970-01-01
    • 1970-01-01
    • 2011-08-12
    • 1970-01-01
    • 2011-08-08
    相关资源
    最近更新 更多