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

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
主站蜘蛛池模板: 霸州市| 泾川县| 绥德县| 阜新市| 信宜市| 奈曼旗| 汤阴县| 贵州省| 门源| 元阳县| 日喀则市| 寿阳县| 如东县| 鸡东县| 通辽市| 长白| 安龙县| 广汉市| 赣州市| 邯郸市| 灵山县| 黑河市| 布拖县| 普陀区| 夏津县| 阿合奇县| 文昌市| 太湖县| 宜宾市| 西乌珠穆沁旗| 河东区| 防城港市| 东至县| 乐业县| 吐鲁番市| 肥西县| 大冶市| 平阴县| 南充市| 澜沧| 开鲁县|