Ответы пользователя по тегу Балансировка нагрузки
  • Можно ли сервером-балансером отдавать статический контент?

    @HeyAway Автор вопроса
    Ошибка -- плохо гуглил.

    Решение -- на сайт devacademy. Ссылку режут.
    Название: Балансировка нагрузки для NGINX
    Спасибо автору.



    Главный - master сервер

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

    Другой сценарий: используем балансировщик нагрузки для обработки запросов. Мы применим небольшой трюк. Заменим следующие настройки на сервере:


    upstream balancer {
      server 192.168.1.100:80 ; 
      server 192.168.1.106:80 ;
    }
    
    server {
      listen 192.168.1.100:80;
      server_name yoursite.com;
      error_log /var/log/yoursite.com-error.log;
      location / {
          proxy_pass http://balancer;
      }
    
    }


    на


    server {
        access_log off;
        error_log /var/log/yoursite.com-error.log;
        listen 127.0.01:80;
        server_name  yoursite.com www.yoursite.com;
    
        location ~* .(gif|jpg|jpeg|png|ico|wmv|3gp|avi|mpg|mpeg|mp4|flv|mp3|mid|js|css|wml|swf)$ {
          root   /var/www/yoursite.com;
          expires max;
          add_header Pragma public;
          add_header Cache-Control "public, must-revalidate, proxy-revalidate";
        }
    
        location / {
          root   /var/www/yoursite.com;
          index  index.php index.html index.htm;
        }
    }
    
    upstream balancer {
      server 192.168.1.100:80 ; 
      server 192.168.1.106:80 ;
      server 127.0.0.1:80 ;
    }
    
    server {
      listen 192.168.1.100:80;
      server_name yoursite.com;
      error_log /var/log/yoursite.com-error.log;
      location / {
          proxy_pass http://balancer;
      }
    }



    Как вы видите, мы внесли два изменения: добавили виртуальный хост по адресу 127.0.0.1 и настроили его на обработку запросов на 80 порт. Затем добавили тот же сервер к вышестоящим серверам, то есть он будет использован для обработки запросов от Nginx запущенного на вашем localhost компьютере.

    На данном этапе балансировщик нагрузки Nginx должен работать без проблем. Конечно существует множество методов и вариантов его настройки, которые стоит изучить.
    Ответ написан
    Комментировать