官术网_书友最值得收藏!

Build for failure

It doesn't matter how many tests we do in our microservice, how many controls are in place, how many alerts could be triggered; if our microservice is going to fail, we need to design for that failure, to handle it as gracefully as possible, and define how we could recover from it.

"Anything that can go wrong will go wrong."
– Murphy

When we approach the initial design of a microservice, we need to start working on the more basic errors that we need to handle. As the design grows, we should think of all the edge scenarios, and finally what could go really wrong. Then, we need to assess how we are going to notify, monitor, and control those situations, how we could recover, and if we have the right information and tools for solving them.

Think of these areas when you design a microservice:

  • Upstream
  • Downstream
  • Logging
  • Monitoring
  • Alerting
  • Recovery
  • Fallbacks
主站蜘蛛池模板: 洪洞县| 淄博市| 福清市| 廊坊市| 通榆县| 康定县| 家居| 蕉岭县| 勃利县| 永兴县| 山阳县| 常熟市| 湖北省| 万州区| 兴安县| 昌宁县| 日喀则市| 隆回县| 宜宾市| 平舆县| 龙岩市| 湖口县| 郓城县| 嵊泗县| 景德镇市| 即墨市| 鸡西市| 蛟河市| 平乡县| 武功县| 尉氏县| 恭城| 和林格尔县| 绥中县| 永胜县| 德兴市| 安西县| 龙川县| 吉木乃县| 长武县| 河西区|