Node.js / NestJS

Мікросервіси

Monolith vs modular monolith vs microservices, message patterns, transporters (TCP, Redis, NATS, RabbitMQ, Kafka), комунікація (sync/async, event-driven), CQRS, event sourcing, client/server

30 питань зі співбесід·
Senior
1

Що таке modular monolith?

Відповідь

Modular monolith — це застосунок, який розгортається як єдина одиниця, але структурований у сильно роз'єднані модулі з чіткими boundaries. На відміну від класичного monolith, де все змішано, modular monolith організовує код у незалежні модулі, які взаємодіють через чітко визначені інтерфейси. Цей підхід поєднує простоту monolith (єдине розгортання, прості ACID-транзакції) із зручністю підтримки microservices (розділення відповідальностей, чіткі boundaries).

2

Яка основна різниця між monolith та microservices?

Відповідь

Основна різниця полягає в розгортанні та незалежності: monolith розгортається як єдина одиниця, де всі компоненти спільно використовують один процес і базу даних, тоді як microservices — це незалежні сервіси, розгорнуті окремо з власними базами даних. Monolith пропонує простоту й легкі ACID-транзакції, але стикається з проблемами масштабованості та підтримки у великому масштабі. Microservices забезпечують незалежне масштабування й автономні розгортання, але вносять розподілену складність.

3

Що таке message pattern у NestJS Microservices?

Відповідь

Message pattern у NestJS визначає режим взаємодії між microservices. Існує два основні типи: request-response (синхронний з очікуваною відповіддю) та event-based (асинхронний без очікування відповіді). Декоратор @MessagePattern() визначає handler для request-response, тоді як @EventPattern() обробляє асинхронні події. Вибір pattern залежить від сценарію використання: request-response для операцій, що потребують негайної відповіді, event-based для сповіщень та eventual consistency.

4

Яка роль transporter у NestJS Microservices?

5

Яка різниця між @MessagePattern() та @EventPattern()?

+27 питань зі співбесід

Інші теми співбесід Node.js / NestJS

Основи Node.js

Junior
20 запитань

Основні API Node.js

Junior
25 запитань

Асинхронне програмування

Junior
25 запитань

Основи Express.js

Junior
20 запитань

Основи NestJS

Junior
23 запитань

Проєктування REST API

Junior
20 запитань

Валідація та DTO

Junior
20 запитань

Документація API та контракти

Junior
20 запитань

Обробка помилок

Junior
20 запитань

Юніт-тестування

Junior
20 запитань

Планування завдань

Junior
15 запитань

Модулі та DI у NestJS

Mid-Level
20 запитань

Конфігурація та керування середовищами

Mid-Level
20 запитань

Автентифікація JWT

Mid-Level
25 запитань

Авторизація та RBAC

Mid-Level
20 запитань

База даних з TypeORM

Mid-Level
30 запитань

Prisma ORM

Mid-Level
25 запитань

Middleware та Interceptors

Mid-Level
20 запитань

Завантаження файлів

Mid-Level
15 запитань

WebSockets

Mid-Level
20 запитань

GraphQL з NestJS

Mid-Level
25 запитань

Наскрізне тестування (End-to-End)

Mid-Level
20 запитань

Кешування з Redis

Mid-Level
20 запитань

Черги з Bull

Mid-Level
20 запитань

DevOps, Logging та CI/CD

Mid-Level
25 запитань

Docker та контейнеризація

Mid-Level
25 запитань

Найкращі практики безпеки

Senior
25 запитань

Продуктивність і хмарне розгортання

Senior
30 запитань

Опануй Node.js / NestJS для наступної співбесіди

Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.

Почни безкоштовно