Горизонтальное масштабирование

Горизонтальное масштабирование — это метод, при котором производительность системы увеличивается за счет добавления узлов. Этим оно отличается от вертикального масштабирования, когда ресурсы добавляются на сами узлы. Допустим, у нас есть система с 4 ГБ ОЗУ и нужно увеличить ее емкость до 16 ГБ ОЗУ. При горизонтальном масштабировании мы добавим еще три инстанса (узла) с 4 ГБ ОЗУ вместо того, чтобы увеличивать объем ОЗУ до 16 ГБ на единственном имеющемся инстансе.

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

Какую проблему решает

По мере роста нагрузки на приложение возникает момент, когда она превышает возможности данного экземпляра приложения. Чтобы система продолжала стабильно работать, необходимо ее масштабировать (увеличить ее ресурсы). Для этого можно либо добавить больше узлов в систему (горизонтальное масштабирование), либо увеличить объем вычислительных ресурсов на существующих узлах (вертикальное масштабирование).

Как именно решает проблему

Горизонтальное масштабирование позволяет приложениям масштабироваться до пределов всего кластера. Добавляя в систему больше экземпляров, мы увеличиваем число запросов, которое может обработать приложение. Например, если один узел обрабатывает 1 тыс. запросов в секунду, то два узла будут обрабатывать 2 тыс., три узла — 3 тыс. запросов и т.д. Это позволяет приложению выполнять больше работы одновременно,
при этом не нужно наращивать производительность какого-либо узла в отдельности.

Связанные термины


Последнее изменение October 8, 2024: [ru] Localize `Horizontal scaling` (#3219) (56b9b64)