网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

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

使用HAProxy对mongos进行负载均衡时,PHP总是报连接错误,192.168.100.200这个IP是两个mongos的VIP。

创新互联是一家专业提供寿光企业网站建设,专注与网站设计、成都网站设计、H5场景定制、小程序制作等业务。10年已为寿光众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。

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/


名称栏目:使用HAProxy对mongos进行负载后PHP报错
转载注明:http://bjjierui.cn/article/ijcjci.html

其他资讯