neverchanje / notes

1 stars 0 forks source link

jepsen #20

Open neverchanje opened 5 years ago

neverchanje commented 5 years ago

Pegasus 此前是如何做可靠性测试的?

  1. kill test

  2. simulator test

  3. production test

Nemesis

doc: https://github.com/jepsen-io/jepsen/blob/master/doc/tutorial/05-nemesis.md

nemesis 作为特殊的 client 对集群注入错误,扮演一个无敌破坏王 Ralph 的角色。Pegasus 就像阿修需要修复所有错误。

有这样几种测试可供选择:

nemesis 实现网络分区的基本原理就是用 linux traffic control 工具,与社区工具 comcastpumba 无二致。但对于一个 “powerful” 的正确性测试框架而言,

Checker

检查数据库的结果是否符合 ”操作历史“(history)。

Jepsen

Jepsen 的运行线程是固定的。