Обновление пассажирского сервера: процессорные (CPU) ядра VS Ram? - PullRequest
3 голосов
/ 31 мая 2011

Я просмотрел документацию Пассажира, чтобы узнать, сколько экземпляров приложения может работать в зависимости от конфигурации оборудования. Документация говорит только о RAM

Оптимальное значение зависит от аппаратного обеспечения вашей системы и средней нагрузки на сервер. Вы должны экспериментировать с разными значениями. Но, вообще говоря, значение должно быть как минимум равно количеству процессоров (или ядер ЦП), которые у вас есть. Если ваша система имеет 2 ГБ ОЗУ, мы рекомендуем значение 30. Если ваша система является виртуальным частным сервером (VPS) и имеет около 256 МБ ОЗУ, а также использует другие службы, такие как MySQL, то мы рекомендуем значение 2.

Это говорит о том, что минимальное значение может быть числом ядер ЦП / ЦП, которые у нас есть. У меня есть VPS с одним VCPU и 1 ГБ ОЗУ, и у моего поставщика услуг есть возможность просто обновить ОЗУ. Мне интересно, как далеко я могу продолжать обновлять только RAM? Насколько важно обновить количество процессоров?

1 Ответ

3 голосов
/ 31 мая 2011

Быстрый ответ

Зависит от того, какие ресурсы являются узким местом для вашего приложения.

Длинный ответ

Вам нужно будет учесть несколько вещей:

  1. Сколько процессорного времени требуется вашему приложению?
  2. Сколько оперативной памяти использует данный экземпляр вашего приложения при пиковой нагрузке?
  3. Тратит ли ваше приложение много времениделать интенсивные задачи?(например: чтение и запись в дБ и файл, сетевое взаимодействие)

Могут быть и другие факторы, но ваши узкие места, вероятно, будут одним из перечисленных выше.Если ОЗУ является вашим главным узким местом, во что бы то ни стало, используйте вашу недавно доступную ОЗУ.Однако, если окажется, что ваше приложение замедляется из-за доступности ЦП или из-за переполнения ввода-вывода, никакое количество ОЗУ не ускорит процесс.

По теме ядер ЦП ;Насколько я понимаю, основной процесс Apache, который запускает Passenger, является однопоточным процессом.Apache порождает новые потоки для обработки параллелизма по мере необходимости.Каждое дополнительное ядро ​​ЦП теоретически позволяет создавать потоки x*n, где x - количество потоков, которые вы можете оптимально запустить под одним ядром ЦП, а n - количество ядер ЦП, доступных для Apache.

Отказ от ответственности : Я не очень хорошо читаю информацию о пассажирах;хотя эта логика обычно сохраняется для других типов конфигураций Apache.

...