2012-05-15 6 views
2

Мне было интересно, существует ли прецедент для использования механизмов типа ПИД-регулятора для управления вычислительными ресурсами (см. http://en.wikipedia.org/wiki/PID_controller).Использование ПИД-контроллера для управления ресурсами в программах

К вычислительным ресурсам я имею в виду: Запасных Нити Запасных процессы, очередь Длина и т.д.

Например, в apache.conf вы можете указать количество свободного сервера, мин-серверов и т.д.

Вопрос, который у меня есть, заключается в том, как вы контролируете нереста нового сервера или сокращение вашего пула ресурсов.

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

В ответ на этот вопрос меня интересует:

  1. Если есть Да, Нет, Может быть, ответ на эти вопросы

  2. Если есть доступные примеры, где это используется в свободном источнике

  3. Если для этой цели существуют библиотеки, реализующие ПИД-управление в java, python и т. д.

Спасибо.

+1

Уставка может быть установлена ​​на 80%, если вы действительно заботитесь о клиенте. – D34dman

ответ

2

Согласно this research article, пул потоков в .NET framework, похоже, один. Я также нашел статьи о балансировке нагрузки на веб-серверах Apache, используя автономный контроль, контролирующий объем памяти в DB2 и т. Д.

code here - это реализация Java, используемая в проекте с открытым исходным кодом.