Перейти к основному контенту
Tech Path Finder
КурсыИнтервьюКод-ревьюБлог
Tech Path Finder

Персонализированный путеводитель в IT. Квизы, мок-интервью, код ревью и аналитика прогресса.

@potapov_me

Платформа

  • Курсы
  • Прогресс
  • Мок-интервью
  • Код ревью
  • Тренажёр переговоров
  • Закладки

Контент

  • Блог
  • Главная
  • Обратная связь

Компания

  • О проекте
  • Тарифы
  • Условия использования
  • Конфиденциальность
  • Согласие на обработку данных
  • Cookie
  • Реквизиты

Аккаунт

  • Войти
  • Зарегистрироваться
  • Профиль

© 2026 Tech Path Finder. Все права защищены.

·ИП Потапов К.С.·Политика конфиденциальности·
Сделано с ❤️ в России
  1. Production-архитектура и наблюдаемость
production_architecture

Production-архитектура и наблюдаемость

Модульные границы, error boundaries, журналирование, telemetry, feature flags, i18n, CI/CD и эксплуатация фронтенда.

Открыть лабораториюv0.1.0Запускается локально из публичного репозитория

Production-архитектура и наблюдаемость

Production frontend — распределённый клиент: он работает на неизвестных устройствах, переживает частичные deploy и должен объяснять свои сбои.

#Результат урока

Вы проведёте module boundaries, встроите safe telemetry, rollout/rollback и диагностику ошибок по версии и correlation id.

До начала достаточно routing, security, performance, testing и server/client architecture. В конце должен появиться не конспект, а production readiness review приложения с observability dashboard, flags и release runbook.

#1. Dependency graph и public APIs

App composition зависит от routes/features/shared; shared не импортирует feature. Каждый slice экспортирует public API, deep imports запрещает lint/boundaries. Границы соответствуют ownership и изменчивости, не создают index file на каждый div.

Рабочая проверка. Постройте graph и найдите cycles.

Типичная поломка. shared/utils импортирует feature store.

#2. Error taxonomy и boundaries

Разделяйте validation, unauthorized, not-found, transient network, invariant bug и chunk load/version skew. Пользователь получает действие; telemetry — code/cause/release. Route/component boundaries ограничивают blast radius. Event/action errors идут по result flow.

Рабочая проверка. Составьте error matrix.

Типичная поломка. Один catch “что-то пошло не так” без code.

#3. Safe telemetry и correlation

Frontend event содержит name, version, route template, duration, outcome и allowlisted dimensions. Не отправляйте raw URL query, form values, tokens и DOM. Traceparent/correlation id связывает client→BFF→service. Sampling и rate limits защищают стоимость.

Рабочая проверка. Добавьте trace id к failed save.

Типичная поломка. Логировать FormData целиком.

#4. Web Vitals и product signals

Собирайте LCP/INP/CLS с route/release/device coarse dimensions и sampling. Добавляйте product latency: search-to-result, save confirmation. Не отправляйте high-cardinality raw URLs. Dashboard разделяет frontend, network и backend contributors.

Рабочая проверка. Определите SLO interaction.

Типичная поломка. Только average page load.

#5. Feature flags и совместимость

Flag evaluation имеет default и outage policy, target cohorts и audit. Код обеих ветвей должен работать с API/schema во время rollout. Flag не хранит authorization. После стабилизации удалите старую ветвь и flag debt.

Рабочая проверка. Rollout 5→25→100% с kill switch.

Типичная поломка. В flag положить secret permission.

#6. i18n как архитектурный контракт

Тексты, plurals, dates/numbers/currency форматируются locale-aware через message catalog/Intl. Не конкатенируйте предложение из fragments: порядок меняется. Layout выдерживает expansion/RTL, timezone явно. Message keys versioned и extracted.

Рабочая проверка. Добавьте plural и RTL screenshot.

Типичная поломка. count + " товара".

#7. CI artifact и безопасный deploy

Build once, promote same immutable artifact. Env-specific runtime config не должен требовать непроверенного rebuild или раскрывать secrets. Assets content-hashed и долго кэшируются; HTML short/no-cache с актуальными links. Deploy поддерживает backward-compatible API и rollback.

Рабочая проверка. Смоделируйте old tab после deploy.

Типичная поломка. Удалить старые chunks мгновенно.

#8. Incident response и runbook

Runbook содержит signal, severity, dashboards, recent releases/flags, mitigation, rollback и verification. Frontend incident может быть CDN, asset, API, browser-specific или third party. Сначала уменьшите impact, сохраните evidence, затем root cause. Postmortem добавляет regression guard.

Рабочая проверка. Проведите game day chunk outage.

Типичная поломка. Отлаживать только локально без release/user context.

#Лаборатория

Разделите монолит на app/routes/features/shared, введите public APIs и import rules. Добавьте Error Boundary telemetry с release/user-safe context, Web Vitals, feature flag rollout, i18n formatting, CI artifact и rollback checklist.

Критерий завершения: dependency graph направлен, PII не уходит в telemetry, инцидент связывается с release/API request, feature можно отключить без нового deploy. Сначала зафиксируйте наблюдаемое поведение тестом или измерением, затем меняйте реализацию.

#Источники для сверки

  • OpenTelemetry JavaScript
  • W3C Trace Context
  • MDN Intl

Устранение неисправностей

Проверьте свои знания

Вопросы ещё не добавлены

Вопросы для этой подтемы ещё не добавлены.

Далее: Внутреннее устройство и миграция