linux redis最大连接数,并发编程-并发下redis连接数监测-Go语言中文社区
背景
用go語言寫的服務(wù),之前在并發(fā)過后,redis連接很久沒有釋放,下面來做下監(jiān)測(cè)的過程。
監(jiān)測(cè)命名netstat
實(shí)戰(zhàn)
netstat -nat | grep 6379
可以檢測(cè)端口的情況
可以看到,現(xiàn)在客戶端沒有啟動(dòng)端口。
下面我們打開rdm客戶端(mac上的ui客戶端)看看效果。
最后面的狀態(tài),說明已經(jīng)建立連接。
常用參數(shù)
以下是他人總結(jié):
-a (all)顯示所有選項(xiàng),netstat默認(rèn)不顯示LISTEN相關(guān)
-t (tcp)僅顯示tcp相關(guān)選項(xiàng)
-u (udp)僅顯示udp相關(guān)選項(xiàng)
-n 拒絕顯示別名,能顯示數(shù)字的全部轉(zhuǎn)化成數(shù)字。(重要)
-l 僅列出有在 Listen (監(jiān)聽) 的服務(wù)狀態(tài)
-p 顯示建立相關(guān)鏈接的程序名(macOS中表示協(xié)議 -p protocol)
-r 顯示路由信息,路由表
-e 顯示擴(kuò)展信息,例如uid等
-s 按各個(gè)協(xié)議進(jìn)行統(tǒng)計(jì) (重要)
-c 每隔一個(gè)固定時(shí)間,執(zhí)行該netstat命令
以下是linux服務(wù)器man截圖:
注:在mac os上和linux上還是有差異的。。
比如-p參數(shù),在linux上可以打印出來program名稱,在mac os上的netstat就沒有。。
啟動(dòng)服務(wù)
把rdm關(guān)掉,然后啟動(dòng)我們的應(yīng)用程序。
發(fā)現(xiàn)之前的連接time_wait了,新的連接被創(chuàng)建。 驗(yàn)證了tcp連接的兩個(gè)狀態(tài)。
下面用ab給點(diǎn)并發(fā),看看效果。
ab -c 10 -n 100 "壓測(cè)網(wǎng)址"
c,表示用戶
n,表示請(qǐng)求總次數(shù)
發(fā)現(xiàn)的確有10個(gè)連接一直在,這說明客戶端沒有主動(dòng)斷開這些連接。
下面調(diào)整下代碼,添加IdleTimeout字段的配置,為20秒,看看效果。
總結(jié)
以上是生活随笔為你收集整理的linux redis最大连接数,并发编程-并发下redis连接数监测-Go语言中文社区的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux x和s 的区别,Hadoop
- 下一篇: linux 两个驱动 竞争,Linux设