Совет: увеличьте размер одного экземпляра или создайте два небольших экземпляра

Немного новичок в расширенных конфигурациях серверов и попытка выяснить, как решить, следует ли мне разделить мой маленький экземпляр на две отдельные маленькие машины (одна база данных и один сервер приложений) или одну большую машину. В основном я не знаю, на какие показатели мне следует ориентироваться, чтобы принять решение.

  1. Какие инструменты я могу использовать для просмотра метрик (в настоящее время выполняется graphite / collectd / statsd)
  2. Какие метрики подскажут мне, какое решение будет более эффективным?

Я стараюсь быть как можно более конкретным, извините, если questipn кажется слишком широким.

EDIT: подробности о приложениях

У меня есть 4 приложения django, работающих на небольшом экземпляре. Одно из них извлекает большое количество записей из базы данных на основе пользовательского ввода (максимум до 60 000)

Это приложение имеет тенденцию поглощать много памяти и запускает подкачку машины, когда оно обрабатывает все данные для вернуться в представление.

0
задан 17 December 2016 в 03:46
1 ответ

Я бы сначала посмотрел на верхнюю часть. Ваше приложение тратит больше времени на ожидание ввода-вывода или ограничено ЦП / ОЗУ?

Масштабирование по сравнению с увеличением - сложный вопрос и очень зависит от приложения, но в целом один блок с 2-кратным объемом ресурсов более эффективен, чем 2 устройства с 1/2 меньшей мощности, потому что во втором случае вы оплачиваете накладные расходы ОС. дважды и не должен иметь дело с ACID (если вы не можете справиться с конечной согласованностью, но все же есть накладные расходы на то, что синхронизирует ваши данные).

Но это зависит от того, более подробная информация о приложении и ожидаемых узких местах это поможет.

1
ответ дан 4 December 2019 в 16:24

Теги

Похожие вопросы