This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="960" height="540" viewBox="0 0 960 540" role="img" aria-labelledby="title desc">
|
||||
<title id="title">Контракт ключа кеша компонента Bitrix</title>
|
||||
<desc id="desc">Схема показывает, что базовый ключ учитывает сайт, компонент, шаблон и параметры, а внешние условия должны быть объявлены отдельно. Неполный ключ ведёт к остановке изменения и проверке контракта.</desc>
|
||||
<rect width="960" height="540" fill="#101827"/>
|
||||
<text x="52" y="64" fill="#f1f5f9" font-family="Arial, sans-serif" font-size="28" font-weight="700">Кеш не объясняет страницу, пока не назван его ключ</text>
|
||||
<text x="52" y="91" fill="#94a3b8" font-family="Arial, sans-serif" font-size="16">Левая часть — данные контракта; правая — решение учебной модели.</text>
|
||||
<g font-family="Arial, sans-serif" font-size="18">
|
||||
<g fill="#1e293b" stroke="#64748b" stroke-width="2"><rect x="54" y="142" width="354" height="274" rx="16"/><rect x="552" y="142" width="354" height="274" rx="16"/></g>
|
||||
<text x="80" y="180" fill="#e2e8f0" font-weight="700">Объявленные входы ключа</text>
|
||||
<g fill="#cbd5e1"><text x="88" y="220">SITE_ID</text><text x="88" y="258">имя компонента</text><text x="88" y="296">имя шаблона</text><text x="88" y="334">$arParams</text><text x="88" y="372">external condition, если влияет на HTML</text></g>
|
||||
<g fill="#0f766e"><rect x="315" y="199" width="56" height="26" rx="13"/><rect x="315" y="237" width="56" height="26" rx="13"/><rect x="315" y="275" width="56" height="26" rx="13"/><rect x="315" y="313" width="56" height="26" rx="13"/></g>
|
||||
<text x="320" y="219" fill="#ecfeff" font-size="14">base</text><text x="320" y="257" fill="#ecfeff" font-size="14">base</text><text x="320" y="295" fill="#ecfeff" font-size="14">base</text><text x="320" y="333" fill="#ecfeff" font-size="14">base</text>
|
||||
<rect x="315" y="351" width="56" height="26" rx="13" fill="#b45309"/><text x="321" y="371" fill="#fff7ed" font-size="14">check</text>
|
||||
<path d="M426 278h97" stroke="#38bdf8" stroke-width="4"/><path d="M515 268l18 10-18 10z" fill="#38bdf8"/>
|
||||
<text x="578" y="180" fill="#e2e8f0" font-weight="700">Решение до изменения</text>
|
||||
<rect x="584" y="211" width="286" height="60" rx="12" fill="#164e63"/><text x="607" y="247" fill="#cffafe">все входы названы → сравнить ветки</text>
|
||||
<rect x="584" y="294" width="286" height="60" rx="12" fill="#7c2d12"/><text x="607" y="330" fill="#ffedd5">вход не назван → не менять кеш</text>
|
||||
<text x="584" y="388" fill="#94a3b8" font-size="15">Это не утверждение о cache hit или SQL.</text>
|
||||
</g>
|
||||
<text x="54" y="482" fill="#a5b4fc" font-family="Arial, sans-serif" font-size="16">Rollback: вернуть прежний параметр/ключ одним изменением и повторить тот же evidence contract.</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.2 KiB |
@@ -0,0 +1,19 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="960" height="540" viewBox="0 0 960 540" role="img" aria-labelledby="title desc">
|
||||
<title id="title">Маршрут диагностики и отката производительности Bitrix-страницы</title>
|
||||
<desc id="desc">Последовательность: сохранить симптом, разделить запрос-компонент-кеш-шаблон, проверить один факт, сделать обратимое изменение или остановиться при неполном evidence, затем повторить тот же контракт.</desc>
|
||||
<rect width="960" height="540" fill="#111827"/>
|
||||
<text x="48" y="62" fill="#f8fafc" font-family="Arial, sans-serif" font-size="27" font-weight="700">Диагностика без фразы «виноват Bitrix»</text>
|
||||
<g font-family="Arial, sans-serif">
|
||||
<g fill="#1f2937" stroke="#94a3b8" stroke-width="2"><rect x="48" y="126" width="168" height="94" rx="14"/><rect x="282" y="126" width="168" height="94" rx="14"/><rect x="516" y="126" width="168" height="94" rx="14"/><rect x="750" y="126" width="168" height="94" rx="14"/></g>
|
||||
<g fill="#e2e8f0" font-size="17" font-weight="700"><text x="75" y="158">1. Симптом</text><text x="305" y="158">2. Разделить</text><text x="542" y="158">3. Проверить</text><text x="779" y="158">4. Действие</text></g>
|
||||
<g fill="#cbd5e1" font-size="14"><text x="65" y="185">маршрут и вариант</text><text x="65" y="205">без числа-причины</text><text x="299" y="185">request / component</text><text x="299" y="205">cache / template</text><text x="532" y="185">один declared fact</text><text x="532" y="205">и владелец</text><text x="770" y="185">малый diff или</text><text x="770" y="205">остановка</text></g>
|
||||
<g stroke="#60a5fa" stroke-width="3"><path d="M216 173h56"/><path d="M450 173h56"/><path d="M684 173h56"/></g>
|
||||
<g fill="#60a5fa"><path d="M262 166l12 7-12 7z"/><path d="M496 166l12 7-12 7z"/><path d="M730 166l12 7-12 7z"/></g>
|
||||
<path d="M600 239v53" stroke="#fb923c" stroke-width="3"/><path d="M592 282l8 13 8-13z" fill="#fb923c"/>
|
||||
<rect x="452" y="308" width="296" height="78" rx="14" fill="#7c2d12" stroke="#fb923c" stroke-width="2"/>
|
||||
<text x="483" y="341" fill="#ffedd5" font-size="18" font-weight="700">Evidence неполный?</text><text x="483" y="367" fill="#fed7aa" font-size="15">Остановить оптимизацию, уточнить контракт.</text>
|
||||
<path d="M748 347h78v83H250v-83h70" fill="none" stroke="#34d399" stroke-width="3"/>
|
||||
<path d="M312 337l10 10-10 10z" fill="#34d399"/>
|
||||
<text x="380" y="455" fill="#bbf7d0" font-size="17">Rollback: вернуть один diff и повторить исходный evidence contract</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.9 KiB |
@@ -0,0 +1,19 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="960" height="540" viewBox="0 0 960 540" role="img" aria-labelledby="title desc">
|
||||
<title id="title">Контракт разбора Bitrix-запроса</title>
|
||||
<desc id="desc">Учебная схема: вход страницы проходит через bootstrap, выбор компонента, решение о кеше, шаблон и HTML. У каждого этапа есть проверяемый факт, но нет измерения времени.</desc>
|
||||
<rect width="960" height="540" fill="#0d1726"/>
|
||||
<rect x="44" y="38" width="872" height="72" rx="14" fill="#14243a" stroke="#60a5fa"/>
|
||||
<text x="76" y="69" fill="#dbeafe" font-family="Arial, sans-serif" font-size="26" font-weight="700">Запрос страницы: сначала контракт, затем измерение</text>
|
||||
<text x="76" y="94" fill="#93c5fd" font-family="Arial, sans-serif" font-size="16">Учебная модель не выполняет PHP, SQL, кеш или браузерный trace.</text>
|
||||
<g font-family="Arial, sans-serif">
|
||||
<g fill="#172a44" stroke="#38bdf8" stroke-width="2"><rect x="50" y="178" width="156" height="110" rx="12"/><rect x="242" y="178" width="156" height="110" rx="12"/><rect x="434" y="178" width="156" height="110" rx="12"/><rect x="626" y="178" width="156" height="110" rx="12"/><rect x="818" y="178" width="96" height="110" rx="12"/></g>
|
||||
<g fill="#e0f2fe" font-size="18" font-weight="700"><text x="78" y="214">1. Вход</text><text x="267" y="214">2. Компонент</text><text x="460" y="214">3. Кеш</text><text x="652" y="214">4. Шаблон</text><text x="834" y="214">5. HTML</text></g>
|
||||
<g fill="#bae6fd" font-size="14"><text x="68" y="244">route declared</text><text x="68" y="266">variant declared</text><text x="258" y="244">name declared</text><text x="258" y="266">params declared</text><text x="450" y="244">key complete?</text><text x="450" y="266">reuse / build</text><text x="644" y="244">template owner</text><text x="644" y="266">output contract</text><text x="832" y="244">response</text><text x="832" y="266">declared</text></g>
|
||||
<g stroke="#60a5fa" stroke-width="3" fill="none"><path d="M206 233h29"/><path d="M398 233h29"/><path d="M590 233h29"/><path d="M782 233h29"/></g>
|
||||
<g fill="#60a5fa"><path d="M228 226l10 7-10 7z"/><path d="M420 226l10 7-10 7z"/><path d="M612 226l10 7-10 7z"/><path d="M804 226l10 7-10 7z"/></g>
|
||||
</g>
|
||||
<rect x="50" y="348" width="864" height="132" rx="14" fill="#132f2b" stroke="#34d399"/>
|
||||
<text x="76" y="384" fill="#bbf7d0" font-family="Arial, sans-serif" font-size="20" font-weight="700">Evidence, который можно сохранить до изменения</text>
|
||||
<text x="76" y="414" fill="#d1fae5" font-family="Arial, sans-serif" font-size="16">route • component • declared cache inputs • branch • template owner • rollback target</text>
|
||||
<text x="76" y="447" fill="#86efac" font-family="Arial, sans-serif" font-size="16">Не evidence: реальные миллисекунды, SQL-запросы, hit-rate, profiler trace, RUM.</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.1 KiB |
Reference in New Issue
Block a user