国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > php框架 > 框架设计 > 使用mongodb shard cluster构建高可用的系统架构

使用mongodb shard cluster构建高可用的系统架构

来源:程序员人生   发布时间:2016-03-29 09:44:59 阅读次数:2829次

在1个产品环境下,高可用是必须到达的目标。下图是mongodb 3.0以后的shard cluster架构图。

Diagram of a sample sharded cluster for production purposes. Contains exactly 3 config servers, 2 or more ``mongos`` query routers, and at least 2 shards. The shards are replica sets.


几个要点

1. mongos实现了mongod1样的服务接口,监听相同的27017端口,mongos接到访问要求后,会根据sharding算法,将要求转发到对应的shard中,然后会将各个shard返回的结果合并后返回给要求方

其实还有其他方法,比如通过LVS将多个mongos放在1个域名下,利用LVS的负载均衡。然后所有web server只通过这个域名发出查询/写入等要求。不过这个方法需要额外的LVS支持。1般情况下,1对1方案就已够用

2. 部署程序的时候,请1同部署mongos。比如1个web服务器上有1个web server和1个mongos。web server总是访问本地运行的mongos,不需要指定1堆IP地址和端口号,那是访问replica set的方式。shard cluster模式下,反而简单了。

3. config server本质上是用mongod组成replica set,记录元数据。config server可以用3台低配的服务器,但是要独立,不要和shard, mongos放在1台服务器上。

生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生