現(xiàn)在系統(tǒng)運(yùn)行的時(shí)候 用戶請(qǐng)求 經(jīng)常會(huì)失敗 或者很卡。查看mysql 發(fā)現(xiàn)有很多慢日志。和mysql已取消的請(qǐng)求 有好幾千
用的是 Db::table(xxxx)->where->first() 這種查詢模式
現(xiàn)在的問題是 想知道 怎么查看 為什么有這么多MYSQL鏈接被占用
難道是進(jìn)程和隊(duì)列開的太多了嗎
webman 只會(huì)一個(gè)進(jìn)程占用一個(gè)mysql連接 假如你一共有50個(gè)進(jìn)程 就只會(huì)占用50個(gè)mysql連接,而且是長(zhǎng)鏈接 不會(huì)釋放那種,你這種肯定不是webman連接的,應(yīng)該是你的代碼 或者 其他項(xiàng)目占用的
謝謝大佬 回復(fù)
我想問下 如果webman數(shù)據(jù)庫操作失敗 直接報(bào)錯(cuò)了 那請(qǐng)問當(dāng)前這個(gè)連接是不是一直不釋放 進(jìn)程也會(huì)一進(jìn)卡著么?還是說進(jìn)程重啟
你無需里面它怎么操作吧,框架都幫你處理好了,你直接使用Db 正常使用即可,慢sql的原因是你的業(yè)務(wù)問題或者你的sql寫的問題,加索引優(yōu)化一下就好了,可以緩存的就緩存不要一直跑數(shù)據(jù)庫
是的 但現(xiàn)在訂單表中就30萬數(shù)據(jù)而已?。。∵@點(diǎn)數(shù)據(jù) 可能都不需要cache!!! 結(jié)果發(fā)現(xiàn)會(huì)出出502..。。
看來只能加上cache了