Welcome 微信登录

首页 / 数据库 / MySQL / MongoDB(自动分片+shard备份) 机器故障 (使用kill -9仿真) 稳定性测试

先上一张准备测试的MongoDB设计图:
图上已经说明很清楚了。可以参加我其它笔记:http://www.linuxidc.com/Linux/2011-08/41040.htm 与 http://www.linuxidc.com/Linux/2011-08/41041.htm如果觉得不清楚 请留言 :)这里使用replication set来避免单节点数据的丢失。测试情况如下:在228服务器上插入 1000W条数据 。在插入完成后先断掉 162 服务器,然后迅速在mongos那里执行 
  1. > db.users.count()  
  2. Fri Jul 29 16:05:11 uncaught exception: count failed: {  
  3.         "assertion" : "DBClientBase::findOne: transport error: 10.10.21.162:27017 query: { setShardVersion: "test.users", configdb: "10.7.3.228:27019", version: Timestamp 5000|1, serverID: ObjectId("4e325735277d2098a18b5cca"), shard: "set162163228", shardHost: "set162163228/10.10.21.162:27018,10.10.21.163:27017" }",  
  4.         "assertionCode" : 10276,  
  5.         "errmsg" : "db assertion failure",  
  6.         "ok" : 0  
  7. }  
可见抛出一个异常,再执行下 db.users.count()
  1. > db.users.count()  
  2. 10000000  
发现正常了,163变成Primary 。然后继续执行插入 10000W数据,在插入过程中断再断掉 163 服务器插入正常进行中,插入完后 对比了下 164的服务器数据 + 连接上162服务器上的数据 正好等于2000W。把 162, 163两个服务器再连接上后,数据不停变化,这时正在进行负载平衡. 
附:若机房出现瞬间停电,那么数据还是会出现问题的,但是这种概率很小。Oracle 11g的RMAN-06207: WARNING:不能删除归档日志MongoDB(AutoSharding+Replication sets 稳定性测试 )相关资讯      MongoDB 
  • MongoDB 3.3.0 发布下载  (01月14日)
  • 使用MongoDB C#官方驱动操作  (12/31/2015 16:27:56)
  • CentOS 6.6下安装MongoDB 3.0.1  (12/21/2015 19:29:02)
  • MongoDB 3.2版WiredTiger存储引擎  (01月02日)
  • 进程监控工具Supervisor 启动  (12/26/2015 10:49:57)
  • MongoDB 3.2.1 RC0 发布下载  (12/18/2015 11:32:29)
本文评论 查看全部评论 (0)
表情: 姓名: 字数