Масштабируемость вашего сервера

Оценить
(0 голоса)

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

•             Аппаратный ресурс становится "узким местом", мешая дальнейшему увеличению производительности или сокращению времени отклика. Например, если какой-нибудь диск становится полностью используемым, это может сдерживать дальнейшее повышение производительности.

•             Конкуренция за программные ресурсы (блокировки, взаимоисключающие блокировки или защелки) увеличивается до того предела, когда время ЦП тратится впустую в ожидании доступности блокировки. Конкуренция за блокировку может стать существенной проблемой для приложений БД. Большее количество пользователей будет означать большую конкуренцию, приводя, таким образом, к возникновению проблемы.

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

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

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

•             Геометрическая модель масштабируемости. Темпы повышения производительности первоначально высоки, однако скорость ее повышения постепенно уменьшается до тех пор, пока не будет достигнуто пиковое значение. К подоб-

ному виду замедления роста производительности могут привести, например, конфликты из-за разделяемых ресурсов, таких как блокировки. Некоторые рабочие нагрузки OLTP ведут себя подобным образом.

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

•             Модель масштабируемости с "узким местом". Масштабируемость ограничивается в конкретной точке и никогда не превышает этого значения. Такое поведение могло бы наблюдаться в том случае, например, когда диск становится полностью используемым.

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

Ложь, большая ложь и статистика
Сравнение методов
Противоречия интервалов
Противоречия накопления и представления данных
Законченная картина

Добавить комментарий


Защитный код
Обновить