Возврат потока в пул при выполнении await Асинхронная модель C# использует state machine и Task На время await текущий поток освобождается до завершения задачи Метод формирует continuation, которое планируется для…
контроль конкурентного доступа к данным доступные уровни: Read Uncommitted, Read Committed, Repeatable Read, Serializable решение определяется соотношением требований к консистентности и производительности низкие…
создание копии объекта с рекурсивным клонированием всех вложенных объектов простое присваивание и Object.assign не подходят, поскольку они копируют только верхний уровень JSON.parse(JSON.stringify(obj)) — быстрый…
Как документировать API микросервисов с помощью Swagger/OpenAPI? — стандарт OpenAPI для описания REST API в формате YAML/JSON — интерактивная документация, создаваемая автоматически (Swagger UI) — валидация API и…
Чтобы запустить поток, вызовите у объекта Thread метод start() Метод start() создаёт новый системный поток операционной системы и запускает его Метод run() является обычным методом и выполняется в том потоке, из…
защита конфиденциальности и безопасность данных на уровне логгера или middleware определить чувствительные поля: пароли, токены и ПДн заменить исходные значения шаблонами: ****, hash или partial mask применять готовые…
in-memory key-value store, применяемое для кэширования и работы баз данных горизонтально масштабируется с помощью шардинга (Cluster) Redis Cluster распределяет данные между узлами по слотам — всего предусмотрено 16384…
CI/CD автоматизирует сборку, тестирование и доставку приложения настроить Git и определить триггеры запуска pipeline подключить CI-сервер: Jenkins, GitLab CI или GitHub Actions запускать сборку и юнит-тесты…
Обработка исключений в микросервисной архитектуре микросервисы — автономные сервисы с изолированной бизнес-логикой централизованный сбор и логирование ошибок, например с помощью ELK или Prometheus обработка на уровне…
Обработка ошибок в RESTful API: форматы ответов и коды статусов HTTP-коды определяют результат обработки запроса и статус ошибки (4xx, 5xx) Коды 4xx обозначают ошибки на стороне клиента: 400 Bad Request, 401…
Обработка ошибок в сервисах проекта базовый элемент архитектуры backend применение централизованного middleware для перехвата исключений передача ошибок на уровень API с использованием унифицированного формата ответа…