Ключевые различия SOA и микросервисной архитектуры SOA: взаимодействие крупных сервисов, нередко организованное через центральный ESB (Enterprise Service Bus) Микросервисы: небольшие автономные компоненты, каждый из…
Надёжное хранение ключей необходимо для поддержания доверия к JWT Применение секретного менеджера: AWS KMS, HashiCorp Vault или Azure Key Vault Доступ предоставляется только согласно правам и ролевой модели (RBAC)…
Гарантии доставки сообщений в RabbitMQ в асинхронной модели RabbitMQ представляет собой брокер сообщений, поддерживающий надежную доставку Применяются гарантии at-most-once, at-least-once и условно exactly-once Для…
В CQRS командная (write) и запросная (read) базы разделяются, чтобы эффективнее распределять нагрузку Изменения передаются с помощью асинхронной репликации Для этого применяют event sourcing либо событийную шину…
реляционная модель, база данных основа решения: две сущности соединяются через промежуточную таблицу в промежуточной таблице хранятся внешние ключи, ссылающиеся на первичные ключи обеих сущностей в качестве первичного…
Моё отношение к созданию примитивных макетов интерфейса значимый этап UX/UI разработки позволяет оперативно проверить концепцию упрощает взаимодействие с заказчиком и командой помогает находить и устранять ошибки ещё…
Подход к проектированию API и создаваемые артефакты Анализ бизнес- и технических требований, целей и задач API Выделение ресурсов, операций и моделей данных Подготовка спецификации с описанием маршрутов, методов, а…
изучение требований: данные, операции и бизнес-логика выделение сущностей и связей между ними (ER-модель) нормализация для снижения избыточности и предотвращения аномалий выбор типа БД (реляционная vs NoSQL) с учетом…
Этапы общего процесса проектирования базы данных Анализ требований: определение бизнес-данных и целей системы Моделирование данных: разработка концептуальной ER-модели Нормализация: сокращение избыточности и…
архитектурный подход к созданию распределённых систем приложение разделяется на самостоятельные сервисы каждый из них выполняет определённую бизнес-задачу сервисы обмениваются данными через строго определённые API…
Сопоставление требований к свежести данных с допустимым периодом их устаревания Определение того, насколько часто источник выполняет обновление данных Поиск компромисса между нагрузкой на базу и эффективностью кэша:…
В основе лежит архитектурный принцип Separation of Concerns UI занимается отображением информации и взаимодействием с пользователем логический слой отвечает за реализацию бизнес-правил и обработку данных логику…