Инженерныерешения

Архитектура / Инфраструктура / CMS / Производительность

Задачи из практики

Здесь разбираю задачи из своих проектов: перенос данных между CMS, настройку интеграций, ускорение сайтов и техническое SEO.

Рассказываю, с чего началась задача, какие были ограничения, что я сделал и как проверял результат. В командных проектах отдельно указываю свой вклад.

Архитектура

[ 01 ]

Frontend Architecture / Strapi / REST API

Архитектура фильтров для каталогов и рейтингов

Фильтры каталогов на Next.js и Strapi: общее состояние, URL-параметры, поиск и пагинация на городском портале Murino.

4+
типа каталогов и рейтингов
CMS
управление данными через Strapi
SSR
страницы на Next.js
[ 02 ]

Frontend Architecture / CMS / Data Layer

Frontend-архитектура без зависимости от CMS

Интеграция Strapi и WordPress с Next.js и Nuxt: преобразование ответов CMS в данные для компонентов, типизация и обработка пустых полей.

CMS
источник данных, а не архитектура UI
API
локализация изменений ответа
Strapi
relations и populate вне компонентов
[ 03 ]

Frontend Architecture / Catalogs / Domain Logic

Масштабирование каталога под разные разделы

Архитектура каталогов для товаров, рецептов и городских объектов: общая загрузка и пагинация, отдельные карточки, маршруты и API.

4+
предметных каталога
API
разные модели данных
CMS
каталоги из управляемого контента
[ 04 ]

Architecture / API Layer / TypeScript

Как уменьшить связанность между frontend и backend

API-слой для frontend: параметры запросов, пагинация, типизация ответов и обработка ошибок отдельно от компонентов интерфейса.

API
централизованные функции запросов
4+
сценария получения данных
Strapi
backend-контракты за пределами UI

CMS

Инфраструктура

[ 01 ]

Infrastructure Setup / Ubuntu / Nginx / PM2

Развертывание fullstack-приложения на VPS

Развёртывание Next.js, Nuxt и Strapi на VPS: Ubuntu, PM2, Nginx, HTTPS и проверка подключения к базе данных.

2
production-процесса: frontend и backend
VPS
настройка сервера с нуля
SSL
HTTPS через Nginx и Certbot
[ 02 ]

Infrastructure Setup / WordPress / Nginx

Перенос WordPress-сайта на VPS: файлы, база, HTTPS и редиректы

Перенос WordPress-сайта на VPS после ограничений shared-хостинга: Nginx, PHP-FPM 8.2, MySQL 8, HTTPS, редиректы, PDF коммерческих предложений и сквозная аналитика.

200 OK
ответ сайта после переноса по HTTPS
VPS
собственный сервер вместо ограниченного хостинга
PDF
автоматическая генерация коммерческих предложений
[ 03 ]

Bug Fixing / Production Diagnostics / Nginx

Как диагностировать сбой сайта, когда полных логов нет

Диагностика сбоев сайта при неполных логах: воспроизведение сценария, анализ ответов сервера, структура кода, вывод данных по сбоям и доработка логирования.

6
шагов метода диагностики от сценария до логирования
VPS
диагностика серверного окружения
200 OK
целевой проверяемый ответ

Производительность

Практика