項目使用的是php,生產(chǎn)環(huán)境使用的是redis集群,連接的地址是配置的域名,每次創(chuàng)建連接必須要經(jīng)過一次域名解析,頻繁的創(chuàng)建鏈接效率低下且經(jīng)常出現(xiàn)超時的情況,有沒有在生產(chǎn)環(huán)境實現(xiàn)redis鏈接池的,分享一下方案??吹骄W(wǎng)上有人介紹說使用 pconnect 連接redis,看了一個文章說這種方式效果不好,可惜實際情況是 PHP 中各個模塊的長連接方法并不好用,基本上是雞肋一樣的存在,原因如下:首先,按照 PHP 的運行機制,長連接在建立之后只能寄居在工作進(jìn)程之上,也就是說有多少個工作進(jìn)程,就有多少個長連接,打個比方,我們有 10 臺 PHP 服務(wù)器,每臺啟動 1000 個 PHP-FPM 工作進(jìn)程,它們連接同一個 Redis 實例,那么此 Redis 實例上最多將存在 10000 個長連接,數(shù)量完全失控了!其次,PHP 的長連接本身并不健壯。一旦網(wǎng)絡(luò)異常導(dǎo)致長連接失效,沒有辦法自動關(guān)閉重新連接,以至于后續(xù)請求全部失敗,此時除了重啟服務(wù)別無它法{來自網(wǎng)上}有沒有其他的方案實現(xiàn)redis連接池。
php如何實現(xiàn)redis連接池
慕尼黑5688855
2019-03-02 04:07:27