DAS_2024_1/README.md

3.4 KiB
Raw Permalink Blame History

  1. Какие алгоритмы используются для балансировки нагрузки?

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

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

    Однако, у него есть и недостатки: не учитывает загруженность сервера в кластере. Если один сервер будет загружен максимально, а другие минимально, к первому все равно будут приходить запросы.

    1. Least connections - учитывает количество подключений, поддерживаемых серверами в текущий момент времени. Запросы передаются серверам с наименьшей загруженностью.
  2. Какие открытые технологии существуют для балансировки нагрузки?

    1. Apache HTTP Server Может использоваться с модулями для балансировки нагрузки, например, mod_proxy_balancer. Это позволяет распределять трафик между несколькими серверами, хотя и требует больше конфигурации по сравнению с другими решениями.

    2. Kubernetes - В рамках контейнерной оркестрации предоставляет встроенные механизмы для балансировки нагрузки, такие как Services и Ingress. Эти ресурсы позволяют управлять сетевым доступом к контейнерам и распределять трафик.

  3. Как осуществляется балансировка нагрузки на базах данных? Балансировка нагрузки заключается в распределении запросов от пользователей по разным копиям базы данных. Это позволяет выполнять большее количество запросов одновременно. Для обеспечения задачи репликации и балансировки нагрузки базы данных развернем кластер master-slave на СУБД PostgreSQL.

  4. Реверс-прокси как один из элементов балансировки нагрузки. Устройство, которое разворачивают в пограничной сети и которое обрабатывает запросы из Интернета, перенаправляя их на компьютеры внутренней сети.