
Мікросервіси
Monolith vs modular monolith vs microservices, message patterns, transporters (TCP, Redis, NATS, RabbitMQ, Kafka), комунікація (sync/async, event-driven), CQRS, event sourcing, client/server
1Що таке modular monolith?
Що таке modular monolith?
Відповідь
Modular monolith — це застосунок, який розгортається як єдина одиниця, але структурований у сильно роз'єднані модулі з чіткими boundaries. На відміну від класичного monolith, де все змішано, modular monolith організовує код у незалежні модулі, які взаємодіють через чітко визначені інтерфейси. Цей підхід поєднує простоту monolith (єдине розгортання, прості ACID-транзакції) із зручністю підтримки microservices (розділення відповідальностей, чіткі boundaries).
2Яка основна різниця між monolith та microservices?
Яка основна різниця між monolith та microservices?
Відповідь
Основна різниця полягає в розгортанні та незалежності: monolith розгортається як єдина одиниця, де всі компоненти спільно використовують один процес і базу даних, тоді як microservices — це незалежні сервіси, розгорнуті окремо з власними базами даних. Monolith пропонує простоту й легкі ACID-транзакції, але стикається з проблемами масштабованості та підтримки у великому масштабі. Microservices забезпечують незалежне масштабування й автономні розгортання, але вносять розподілену складність.
3Що таке message pattern у NestJS Microservices?
Що таке message pattern у NestJS Microservices?
Відповідь
Message pattern у NestJS визначає режим взаємодії між microservices. Існує два основні типи: request-response (синхронний з очікуваною відповіддю) та event-based (асинхронний без очікування відповіді). Декоратор @MessagePattern() визначає handler для request-response, тоді як @EventPattern() обробляє асинхронні події. Вибір pattern залежить від сценарію використання: request-response для операцій, що потребують негайної відповіді, event-based для сповіщень та eventual consistency.
Яка роль transporter у NestJS Microservices?
Яка різниця між @MessagePattern() та @EventPattern()?
+27 питань зі співбесід
Інші теми співбесід Node.js / NestJS
Основи Node.js
Основні API Node.js
Асинхронне програмування
Основи Express.js
Основи NestJS
Проєктування REST API
Валідація та DTO
Документація API та контракти
Обробка помилок
Юніт-тестування
Планування завдань
Модулі та DI у NestJS
Конфігурація та керування середовищами
Автентифікація JWT
Авторизація та RBAC
База даних з TypeORM
Prisma ORM
Middleware та Interceptors
Завантаження файлів
WebSockets
GraphQL з NestJS
Наскрізне тестування (End-to-End)
Кешування з Redis
Черги з Bull
DevOps, Logging та CI/CD
Docker та контейнеризація
Найкращі практики безпеки
Продуктивність і хмарне розгортання
Опануй Node.js / NestJS для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно