redis tcp-backlog配置

來源:互聯網
上載者:User

標籤:des   style   blog   http   io   os   sp   div   2014   

在redis2.8版本中有一個tcp-backlog配置, 說明如下:

# TCP listen() backlog.
#
# In high requests-per-second environments you need an high backlog in order
# to avoid slow clients connections issues. Note that the Linux kernel
# will silently truncate it to the value of /proc/sys/net/core/somaxconn so
# make sure to raise both the value of somaxconn and tcp_max_syn_backlog
# in order to get the desired effect.
tcp-backlog 100

然後運行ss命令顯示:

12 State      Recv-Q Send-Q        Local Address:Port          Peer Address:Port LISTEN     0      100                       *:6379                     *:*    

我們看到Send-Q的值為100, 即是我們配置的tcp-backlog值. 為了搞清楚這個值的意思, 瞭解了下tcp的三向交握進行中的一些queue的知識. 參考我們可以看到在server接收到sny的時候會進入到一個syn queue隊列, 當server端最終收到ack時轉換到accept queue隊列. 上面終端顯示在listen狀態下的串連, 其Send-Q就是這個accept queue隊列的最大值. 只有server端執行了accept後才會從這個隊列中移除這個串連. 這個值的大小是受somaxconn影響的, 因為是取的它們兩者的最小值, 所以如果要調大的話必需修改核心的somaxconn值. 

參考: http://jaseywang.me/2014/07/20/tcp-queue-%E7%9A%84%E4%B8%80%E4%BA%9B%E9%97%AE%E9%A2%98/

 

redis tcp-backlog配置

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.