Files
progcode/web/public/assets/editorial/2026/resilience-2026-degradation-mode-matrix.svg
T
huncode 9812aa0c63
Build and deploy / deploy (push) Successful in 17s
revise February 2026 resilience articles
2026-07-31 18:59:19 +03:00

63 lines
6.3 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="840" viewBox="0 0 1200 840" role="img" aria-labelledby="title desc">
<title id="title">Матрица fixed режимов деградации</title>
<desc id="desc">Таблица показывает четыре synthetic состояния: временный timeout, отсутствие необязательной части, неограниченный fan-out и исчерпанный бюджет. Для каждого состояния названы разрешённое действие, добавленная работа и граница.</desc>
<rect width="1200" height="840" fill="#f8fafc"/>
<rect x="34" y="28" width="1132" height="92" rx="18" fill="#102a43"/>
<text x="68" y="79" fill="#ffffff" font-family="Arial, sans-serif" font-size="38" font-weight="700">Матрица: исход не даёт право на новый маршрут</text>
<text x="68" y="105" fill="#cfe8ff" font-family="Arial, sans-serif" font-size="22">Все значения — fixed synthetic literals, а не данные о сервисе.</text>
<rect x="42" y="164" width="288" height="74" fill="#1f3b5b"/>
<rect x="330" y="164" width="330" height="74" fill="#1f3b5b"/>
<rect x="660" y="164" width="252" height="74" fill="#1f3b5b"/>
<rect x="912" y="164" width="246" height="74" fill="#1f3b5b"/>
<text x="186" y="210" text-anchor="middle" fill="#ffffff" font-family="Arial, sans-serif" font-size="28" font-weight="700">fixed symptom</text>
<text x="495" y="210" text-anchor="middle" fill="#ffffff" font-family="Arial, sans-serif" font-size="28" font-weight="700">permitted action</text>
<text x="786" y="210" text-anchor="middle" fill="#ffffff" font-family="Arial, sans-serif" font-size="28" font-weight="700">work added</text>
<text x="1035" y="210" text-anchor="middle" fill="#ffffff" font-family="Arial, sans-serif" font-size="28" font-weight="700">named boundary</text>
<rect x="42" y="238" width="1116" height="126" fill="#fff7d6" stroke="#d69e2e" stroke-width="2"/>
<text x="68" y="288" fill="#744210" font-family="Arial, sans-serif" font-size="28" font-weight="700">temporary timeout</text>
<text x="68" y="322" fill="#744210" font-family="Arial, sans-serif" font-size="23">one named injection</text>
<text x="356" y="288" fill="#5d4500" font-family="Arial, sans-serif" font-size="28">edge performs one retry</text>
<text x="356" y="322" fill="#5d4500" font-family="Arial, sans-serif" font-size="23">after a fixed backoff slot</text>
<text x="686" y="288" fill="#5d4500" font-family="Arial, sans-serif" font-size="28">+1 attempt</text>
<text x="686" y="322" fill="#5d4500" font-family="Arial, sans-serif" font-size="23">fan-out remains one</text>
<text x="938" y="288" fill="#5d4500" font-family="Arial, sans-serif" font-size="27">retry budget</text>
<text x="938" y="322" fill="#5d4500" font-family="Arial, sans-serif" font-size="23">max attempts: 2</text>
<rect x="42" y="364" width="1116" height="126" fill="#eef2ff" stroke="#6b6bdf" stroke-width="2"/>
<text x="68" y="414" fill="#3730a3" font-family="Arial, sans-serif" font-size="28" font-weight="700">optional part absent</text>
<text x="68" y="448" fill="#3730a3" font-family="Arial, sans-serif" font-size="23">fixed route outcome</text>
<text x="356" y="414" fill="#3730a3" font-family="Arial, sans-serif" font-size="28">named-summary output</text>
<text x="356" y="448" fill="#3730a3" font-family="Arial, sans-serif" font-size="23">no nested retry</text>
<text x="686" y="414" fill="#3730a3" font-family="Arial, sans-serif" font-size="28">+1 work unit</text>
<text x="686" y="448" fill="#3730a3" font-family="Arial, sans-serif" font-size="23">no new route search</text>
<text x="938" y="414" fill="#3730a3" font-family="Arial, sans-serif" font-size="27">named fallback</text>
<text x="938" y="448" fill="#3730a3" font-family="Arial, sans-serif" font-size="23">one fixed output</text>
<rect x="42" y="490" width="1116" height="126" fill="#fff1f0" stroke="#d84a3f" stroke-width="2"/>
<text x="68" y="540" fill="#7a271a" font-family="Arial, sans-serif" font-size="28" font-weight="700">fan-out is unbounded</text>
<text x="68" y="574" fill="#7a271a" font-family="Arial, sans-serif" font-size="23">any number is not a limit</text>
<text x="356" y="540" fill="#7a271a" font-family="Arial, sans-serif" font-size="28">stop review</text>
<text x="356" y="574" fill="#7a271a" font-family="Arial, sans-serif" font-size="23">set a finite integer bound</text>
<text x="686" y="540" fill="#7a271a" font-family="Arial, sans-serif" font-size="28">+0 accepted</text>
<text x="686" y="574" fill="#7a271a" font-family="Arial, sans-serif" font-size="23">expansion is refused</text>
<text x="938" y="540" fill="#7a271a" font-family="Arial, sans-serif" font-size="27">stop-unbounded</text>
<text x="938" y="574" fill="#7a271a" font-family="Arial, sans-serif" font-size="23">replication</text>
<rect x="42" y="616" width="1116" height="126" fill="#e7f8ef" stroke="#21865b" stroke-width="2"/>
<text x="68" y="666" fill="#135d3d" font-family="Arial, sans-serif" font-size="28" font-weight="700">budget exhausted</text>
<text x="68" y="700" fill="#135d3d" font-family="Arial, sans-serif" font-size="23">limit reads before expansion</text>
<text x="356" y="666" fill="#135d3d" font-family="Arial, sans-serif" font-size="28">return degraded result</text>
<text x="356" y="700" fill="#135d3d" font-family="Arial, sans-serif" font-size="23">do not choose another path</text>
<text x="686" y="666" fill="#135d3d" font-family="Arial, sans-serif" font-size="28">+0 attempts</text>
<text x="686" y="700" fill="#135d3d" font-family="Arial, sans-serif" font-size="23">cascade terminates</text>
<text x="938" y="666" fill="#135d3d" font-family="Arial, sans-serif" font-size="27">terminal action</text>
<text x="938" y="700" fill="#135d3d" font-family="Arial, sans-serif" font-size="23">fixed output only</text>
<line x1="330" y1="164" x2="330" y2="742" stroke="#9fb3c8" stroke-width="2"/>
<line x1="660" y1="164" x2="660" y2="742" stroke="#9fb3c8" stroke-width="2"/>
<line x1="912" y1="164" x2="912" y2="742" stroke="#9fb3c8" stroke-width="2"/>
<text x="42" y="796" fill="#486581" font-family="Arial, sans-serif" font-size="22">Matrix checks contracts of a fixed model, not availability, latency or capacity of a production system.</text>
</svg>