Условие
Что особенно важно при проектировании продукта, чтобы обеспечить гибкость и возможность масштабирования в будущем?
- Прототипирование
- Монолитная архитектура
- Микросервисная архитектура ✓
- Рефакторинг кода
- Применение методологии Scrum
Решение
Микросервисная архитектура. Разбиение системы на независимые сервисы, развёртываемые и масштабируемые отдельно — это и есть архитектурный ответ на «гибкость + горизонтальное масштабирование». Каждый сервис можно скейлить, обновлять и переписывать независимо.
Почему остальные не подходят:
- Прототипирование — этап разработки, не архитектура и не масштабирование.
- Монолитная архитектура — противоположность вопроса: монолит масштабируется сложнее, чем микросервисы.
- Рефакторинг кода — практика поддержки кодовой базы, не архитектурное решение про масштабирование.
- Scrum — методология управления, не архитектура.
Стоит помнить, что микросервисы добавляют операционной сложности (network, observability, eventual consistency), поэтому их выбирают, когда монолит реально упирается в потолок.
Эталонный ответ
Микросервисная архитектура.