Home  >  Article  >  Backend Development  >  Nginx and PHP installation and configuration: 5 strategies for nginx load balancing

Nginx and PHP installation and configuration: 5 strategies for nginx load balancing

不言
不言Original
2018-04-14 10:02:241525browse

This article shares with you the five strategies for installing and configuring Nginx and PHP seven nginx load balancing. It has certain reference value. Friends in need can refer to it


nginxYou can perform load balancing based on the client IP. By setting ip_hash in upstream, you can select the same client for the same class C address segment. A backend server, unless that backend server is down, it will be replaced.

nginx's upstream Currently supports 5 ways of allocation


1, polling (default)
Every Requests are assigned to different back-end servers one by one in chronological order. If the back-end server goes down, it can be automatically eliminated.
upstream backserver {
server 192.168.0.14;
server 192.168.0.15;
}

##2, Specify the weight
to specify the polling probability. The weight
is proportional to the access ratio and is used when the back-end server performance is uneven.
upstream backserver {

server 192.168.0.14 weight=10;

server 192.168.0.15 weight=10;
##}


3
, IPBind ip_hashEach request is allocated according to the hash result of accessing ip
, so that each visitor has a fixed access to one post The end server can solve the session problem.
upstream backserver {
ip_hash;
server 192.168. 0.14:88;
#server 192.168.0.15:80;
}

4
, fair (third party) Press the response of the backend server Time is allocated to requests, and those with short response times are allocated first.
upstream backserver {
server server1;
server server2;
fair;
##}
##5
, url_hash
(third party)
Distributed according to the hash result of accessing url Request so that each URL is directed to the same backend server. It is more effective when the backend server is cached.
upstream backserver {
server squid1:3128;
server squid2:3128;
hash $request_uri;
##hash_method crc32;

}

Add
to the server
that needs to use load balancing
proxy_pass http://backserver/;

upstream backserver{
##ip_hash;
server 127.0.0.1:9090 down; (down
means that the previous server will not participate in the load temporarily) server 127.0.0.1:8080 weight=2; (weight defaults to 1. The larger the weight, the greater the weight of the load)
server 127.0.0.1:6060;
##server 127.0.0.1:7070 backup; (All other non-backup machines When down or busy, request the backup machine)
}

max_fails : Allow The default number of request failures is 1.When the maximum number of requests is exceeded, the error defined by the proxy_next_upstream module is returned

fail_timeout:max_failsThe pause time after failures

Reference article:


##http://www.cnblogs.com/andashu/p/6377323.html

http: //blog.csdn.net/xiajun07061225/article/details/9318871

Related recommendations:

Nginx and PHP Installation and Configuration Sixth Nginx Reverse Proxy and Load Balancing Deployment Guide

Nginx and php installation and configuration 5. LINUX Use PHPIZE to install PHP GD extension

Nginx and php installation and configuration 4. nginx and php Start or restart

The above is the detailed content of Nginx and PHP installation and configuration: 5 strategies for nginx load balancing. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn