Масштабирование
Масштабирование сервисов обеспечивается как вертикально (процессы внутри контейнера), так и горизонтально (дополнительные реплики сервиса).
Процессом масштабирования управляет MMF. В текущей реализации контейнеризации (Docker-Swarm) MMF хранит информацию о кол-ве текущих реплик, их конфигурации и адресах внутри сети в своей БД.
Оркестратор
Оркестратор отвечает за распределение задач и масштабирование сервисов. Обслуживанием online-запросов занимается nginx - он направляет запрос непосредственно в одну из реплик модели. Запросы в формате очереди направляются в rabbitmq.
Автоскейлер
Чтобы задачи в формате очереди не зависли в этой очереди навсегда для сервисов, у которых нет ни одной реплики, в архитектуре mmf есть автоскейлер - это отдельное приложение, задача которого - мониторить очереди задач для проектов, у которых нет реплики, и поднимать под них соответсвующий контейнер для разового исполнения.