60 lines
4.4 KiB
XML
60 lines
4.4 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" width="720" height="1420" viewBox="0 0 720 1420" role="img" aria-labelledby="title desc">
|
||
<title id="title">Учебная временная шкала задержки между сохранением и видимостью поиска</title>
|
||
<desc id="desc">Диаграмма показывает четыре условные точки времени: source сохранён на 100, ingest поставлен на 110, pending index подготовлен на 125, refresh даёт видимость на 160. Наблюдаемая разница 60 условных миллисекунд не является SLA.</desc>
|
||
<defs>
|
||
<marker id="arrow" markerWidth="12" markerHeight="12" refX="10" refY="6" orient="auto">
|
||
<path d="M0 0 L12 6 L0 12 Z" fill="#78dce8"/>
|
||
</marker>
|
||
<style>
|
||
.title { font: 700 31px system-ui, sans-serif; fill: #f8fafc; }
|
||
.subtitle { font: 400 20px system-ui, sans-serif; fill: #b6c4d6; }
|
||
.card-title { font: 700 25px system-ui, sans-serif; fill: #f8fafc; }
|
||
.body { font: 400 21px system-ui, sans-serif; fill: #d7e1ee; }
|
||
.small { font: 600 19px system-ui, sans-serif; fill: #d7e1ee; }
|
||
.label { font: 700 21px system-ui, sans-serif; fill: #0b1220; }
|
||
</style>
|
||
</defs>
|
||
<rect width="720" height="1420" fill="#0b1220"/>
|
||
<rect x="24" y="24" width="672" height="82" rx="18" fill="#121d31" stroke="#273755" stroke-width="2"/>
|
||
<text x="48" y="59" class="title">Как разложить наблюдаемую задержку</text>
|
||
<text x="48" y="87" class="subtitle">четыре учебные точки времени, не обещание SLA</text>
|
||
|
||
<rect x="54" y="137" width="612" height="94" rx="16" fill="#283d5d"/>
|
||
<text x="84" y="176" class="card-title">100 · savedAtMs</text>
|
||
<text x="84" y="207" class="body">доменная version 7 сохранена</text>
|
||
|
||
<path d="M360 243 L360 286" stroke="#78dce8" stroke-width="5" marker-end="url(#arrow)"/>
|
||
<rect x="54" y="300" width="612" height="94" rx="16" fill="#433a75"/>
|
||
<text x="84" y="339" class="card-title">110 · enqueuedAtMs</text>
|
||
<text x="84" y="370" class="body">один key id:version ждёт ingest</text>
|
||
|
||
<path d="M360 406 L360 449" stroke="#78dce8" stroke-width="5" marker-end="url(#arrow)"/>
|
||
<rect x="54" y="463" width="612" height="94" rx="16" fill="#624d2a"/>
|
||
<text x="84" y="502" class="card-title">125 · indexedAtMs</text>
|
||
<text x="84" y="533" class="body">pending index готов, query ещё stale</text>
|
||
|
||
<rect x="74" y="594" width="572" height="162" rx="18" fill="#2d2530" stroke="#ffc857" stroke-width="3"/>
|
||
<text x="104" y="636" class="card-title">Промежуток ожидания видимости</text>
|
||
<text x="104" y="670" class="body">query «свежести» → 0 попаданий</text>
|
||
<text x="104" y="701" class="body">диагноз: awaiting-refresh</text>
|
||
<text x="104" y="732" class="small">собрать evidence, не удалять source</text>
|
||
|
||
<path d="M360 768 L360 811" stroke="#78dce8" stroke-width="5" marker-end="url(#arrow)"/>
|
||
<rect x="54" y="825" width="612" height="94" rx="16" fill="#245449"/>
|
||
<text x="84" y="864" class="card-title">160 · visibleAtMs</text>
|
||
<text x="84" y="895" class="body">refresh делает version 7 видимой</text>
|
||
|
||
<path d="M360 931 L360 974" stroke="#78dce8" stroke-width="5" marker-end="url(#arrow)"/>
|
||
<rect x="54" y="988" width="612" height="121" rx="16" fill="#1b4238" stroke="#66d9a0" stroke-width="3"/>
|
||
<text x="84" y="1029" class="card-title">Query после refresh</text>
|
||
<text x="84" y="1061" class="body">1 hit · current version 7</text>
|
||
<text x="84" y="1091" class="small">дальше проверяем именно контракт query</text>
|
||
|
||
<rect x="54" y="1150" width="612" height="199" rx="18" fill="#142033" stroke="#4a85c5" stroke-width="3"/>
|
||
<text x="84" y="1194" class="card-title">Как читать этот бюджет</text>
|
||
<text x="84" y="1230" class="body">visibleAtMs − savedAtMs = 60</text>
|
||
<text x="84" y="1261" class="body">60 — вход fixture для проверки арифметики</text>
|
||
<text x="84" y="1292" class="body">проект сам выбирает policy и порог реакции</text>
|
||
<text x="84" y="1323" class="small">не переносим число в production без измерения</text>
|
||
</svg>
|