温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

使用HAProxy对mongos进行负载后PHP报错

发布时间:2020-06-21 20:46:38 来源:网络 阅读:1079 作者:自由linux 栏目:web开发

使用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/


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI