欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

MongoDB(自动分片+shard备份) 机器故障 (使用kill -9仿真) 稳定性测试

程序员文章站 2024-01-21 17:22:16
...

这里使用replication set来避免单节点数据的丢失。测试情况如下:在228服务器上插入 1000W条数据 。在插入完成后先断掉 162 服务

先上一张准备测试的MongoDB设计图:

MongoDB(自动分片+shard备份) 机器故障 (使用kill -9仿真) 稳定性测试


图上已经说明很清楚了。可以参加我其它笔记: 与 如果觉得不清楚 请留言 :)

这里使用replication set来避免单节点数据的丢失。

测试情况如下:

在228服务器上插入 1000W条数据 。在插入完成后先断掉 162 服务器,然后迅速在mongos那里执行

可见抛出一个异常,再执行下 db.users.count()

  • > db.users.count()
  • 10000000
  • 发现正常了,163变成Primary 。

    然后继续执行插入 10000W数据,在插入过程中断再断掉 163 服务器

    插入正常进行中,插入完后 对比了下 164的服务器数据 + 连接上162服务器上的数据 正好等于2000W。

    把 162, 163两个服务器再连接上后,数据不停变化,,这时正在进行负载平衡.


    附:若机房出现瞬间停电,那么数据还是会出现问题的,但是这种概率很小。

    MongoDB(自动分片+shard备份) 机器故障 (使用kill -9仿真) 稳定性测试