由于介面需要實時資料,不能用快取,現在應為用戶群體比較多,請求介面每分鐘達到兩萬到四萬次請求時,出現了程式鏈接不上資料庫的情況,
資料庫 mysql 5.7,
php 5.6
服務器配置 100M帶寬,16核心CPU,32G記憶體,帶寬用了大概70M左右,沒有滿,CPU 和記憶體遠遠沒有發揮作用,
但是資料庫卻在這樣高并發的情況下,偶爾性的出現鏈接不上,過幾秒就可以了,請MYSQL 大神指教下。
uj5u.com熱心網友回復:
一個是最大連接數設定大一點,另一個是客戶端使用連接池uj5u.com熱心網友回復:
show status like '%connect%'; 看下連接數。如果不是鏈接數問題,在peak的時候看下I/O有沒有wait
uj5u.com熱心網友回復:
最大連接數設定非常大,100000 直接這樣設定的,沒有超過這個連接數uj5u.com熱心網友回復:
mark一下啊
,我也不懂
uj5u.com熱心網友回復:
啥程式呀,并發連接這么大?uj5u.com熱心網友回復:
程式連接不上資料庫就是資料庫的鏈接被占滿了,這個是肯定的,你的連接數設定的又不小,還出現這個情況,只能說是你之前的請求雖然完事了,但是程式還是連接著資料庫的,應該是這樣uj5u.com熱心網友回復:
我試過將最大的連接數改成了 10萬,最大連接數查看,最大值是兩萬多。
uj5u.com熱心網友回復:
CSDN的MYSQL 大神們,我把帶寬消耗降低到 10M左右,但是還是卡,如果是鏈接阻塞的話,不至于工具都連接不上資料庫,CPU 和記憶體,都沒有很高uj5u.com熱心網友回復:
CPU和記憶體消耗圖,另外,代碼只消耗了10M左右,機房反饋,基本上都走內網了,我修改了linux 的內核,打開檔案數也修改到了3萬,但是還是會卡,會出現鏈接不上資料庫,不知道是哪里的問題,求大神出來幫我分析分析。
uj5u.com熱心網友回復:
客戶端是怎么設定連接池的?uj5u.com熱心網友回復:
PHP 程式,我也不知道怎么設定的。uj5u.com熱心網友回復:
另外,我想問下各位大神,讀寫操作比較多,用MyISAM 會比較好吧?uj5u.com熱心網友回復:
應該是你之前連接上做寫作業后,這些連接有沒有釋放,如果不釋放會占用連接的,這樣不用多久就會占滿連接而報錯uj5u.com熱心網友回復:
應該用websocket 做個緩沖區轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/80835.html
標籤:MySQL
