2008-10-06 3 views
4

У меня есть приложение (служба IP-конференц-связи), которое мне нужно масштабировать. В нем имеется немало независимых компонентов/приложений, написанных на разных языках (в основном C++ и PHP, некоторые Perl). В настоящее время одна установка работает на 5 машинах, причем 1-2 компонента используют один блок. Таким образом, конфигурация каждой коробки отличается, поэтому боль в масштабе все это, не говоря уже о техническом обслуживании.Масштабирование приложения

Отдельные компоненты варьируются от медиа-прокси до прокси-серверов и баз данных, поэтому загрузка - это все, но даже.

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

Знаете ли вы ресурсы, на которых я должен начать? В идеале мне нужны некоторые ориентиры, которые лучше подходят с точки зрения производительности? (думая вслух, когда у меня есть X объем нагрузки и Y объем памяти и вычислительная мощность, где это важно, как я его распределяю?)

ответ

5

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

1

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

Я бы второй раз посмотрел на виртуализацию. Он делает ваше приложение: Быстрое развертывание Простая резервная копия В случае сбоя быстро восстановить

Смежные вопросы