您好,登錄后才能下訂單哦!
使用HAProxy對mongos進行負載均衡時,PHP總是報連接錯誤,192.168.100.200這個IP是兩個mongos的VIP。
Failed to connect to: 192.168.100.200:28018: send_package: error reading from socket: The socket is closed
經過多次測試仍然無法解決連接報錯的問題。于是和開發同事討論改用PHP程序去連接多個mongos的做法,當一個mongos連接不上,就去連接另一個mongos
錯誤寫法
$server = 'mongodb://10.10.41.25:38018/'.$config['db_name'].',10.10.41.25:28018/'.$config['db_name'].',10.10.41.25:48018/'.$config['db_name'];
正確寫法
$server = 'mongodb://192.168.100.74:28018,192.168.100.75:28018/'.$config['db_name'];
使用MongoDB2.4.6作集群的時候,當后端分片的MongoDB實例掛掉后,客戶端經常報Mongos連接錯誤。這個是由于版本的問題,升級到2.6.8后就沒有這個問題了。
參考資料:
http://php.net/manual/zh/mongo.connecting.mongos.php
https://jira.mongodb.org/browse/SERVER-13352
http://stackoverflow.com/questions/15576766/cannot-upgrade-sharded-mongodb-or-stop-the-balancer
http://docs.mongodb.org/manual/release-notes/2.6-upgrade/
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。