nginx做mysql负载

nginx下载地址(1.9版本以上):http://nginx.org/en/download.html
wget http://nginx.org/download/nginx-1.12.2.tar.gz
注:数据库为主主

tar xzf nginx-1.12.2.tar.gz
cd nginx-1.12.2
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=../pcre-8.39 --with-stream
make && make install
修改nginx主配置文件,在最后追加一下内容:
stream {
upstream backend {
hash $remote_addr consistent;
server 125.208.14.177:3306 weight=5 max_fails=3 fail_timeout=30s;
server 125.208.14.177:3307 weight=4 max_fails=3 fail_timeout=30s;
}
server {
listen 12345;
proxy_connect_timeout 1s;
proxy_timeout 3s;
proxy_pass backend;
}
}
down : 表示单前的server暂时不参与负载
weight: 默认为1.weight越大,负载的权重就越大。
max_fails :允许请求失败的次数默认为1.当超过最大次数时,返回proxy_next_upstream 模块定义的错误
fail_timeout:max_fails次失败后,暂停的时间。
backup: 其它所有的非backup机器down或者忙的时候,请求backup机器。所以这台机器压力会最轻。

转载于:https://blog.51cto.com/10956218/2390485

你可能感兴趣的:(nginx做mysql负载)