写一个'混沌猴'来增强弹性

时间:2011-05-13 20:53:07

标签: web-services testing infrastructure

对于问题相当开放的性质表示道歉,但我认为这是一个非常有价值的讨论领域。

继最近的AWS outage以及随之而来的大量恐怖故事之后,我对Netflix应用的混沌猴子技术印象非常深刻(这是少数几个没有划痕的生存之一。) / p>

对于那些不了解这个概念的人来说,它本质上是一个围绕你的基础设施的小机器人,在此过程中造成混乱,作为持续测试弹性的一种方式。

除了Jeff Atwood's Chaos Monkey帖子之外,我在其他任何地方都找不到这个。

虽然我很欣赏良好的测试驱动开发是一个坚实的基础,但我认为这对任何想要熬夜的公司/组织的武器库都是一个很好的补充。

  • 之前有其他人接触过这个话题吗?
  • 除了连接和安全漏洞之外,您是否会看到这样的代码?
  • 对这种方法有任何其他想法/感受吗?

1 个答案:

答案 0 :(得分:6)

您可以通过多种测试来强调系统。我喜欢使用apache bench来加载测试写入数据库的页面。我测试它的命中数和并发用户数

  

500个并发用户共发出5000个请求   $ ab -n 5000 -c 500 url

我知道我的网络服务器可以做到这一点,但我发现我记录信息的方式存在问题。您可以指出您网站的不同方面。

如果您使用缓存,则可以在测试过程中清除缓存,以确保所有内容都能快速恢复。

如果您可以在VM中复制服务器,请更改RAM量,卸载硬盘,磁盘空间不足,断开网络接口等。

您可以尝试强制使用密码,并确保您的系统在限制该用户之前只允许n次登录尝试。