Это также зависит от того, сколько серверов требуется для обработки каждого приложения, и от вашего подхода к обновлениям.
Если приложению требуются два сервера для обработки нагрузки, вы можете подумать, что можете разделить приложения так, как вы их описали. Но если вам нужно поддерживать полный сервис во время обновлений, вам нужен третий сервер (это резервирование N + 1), чтобы два всегда были в состоянии справиться с нагрузкой.
Из-за таких вещей я бы развернул все приложения на всех серверах и использовал балансировщики нагрузки (если они у вас есть) для фактического распределения нагрузки по серверам. Это позволяет вам предоставлять премиум-приложениям (или даже премиум-пользователям) большую часть доступных ресурсов большую часть времени, но позволяет перераспределять их на периоды пиковой нагрузки, обновлений и т. Д.
Вам, вероятно, следует задать этот вопрос и на webmasters.stackexchange.com