Nginx负载均衡记录
2015-11-18 16:34
495 查看
一、下载安装。
我是在windows环境下配置的。在nginx官网上下载最新稳定版nginx,解压后有一个nginx.exe文件。cmd下执行nginx,浏览器访问nginx所在ip(端口默认80)。访问成功则代表启动成功,停止服务cmd下nginx.exe -s -stop。
二、配置负载
在conf/nginx.conf中找到http {
include mime.types;...}
添加: upstream 123{
server 127.0.0.1:8080;
server 127.0.0.1:8090;
}
找到http{...}下的server {...}
添加:server {
listen 80;
server_name localhost;
location / {
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504 http_404;(目的是错误时自动跳转到下一个负载服务器)
proxy_connect_timeout 5s;
proxy_read_timeout 1s;
proxy_pass http://123;(与upstream对应)
}
以上配置可以实现服务器节点挂掉时,不影响访问。
三、nginx的四种调度算法
1、轮询默认的
upstream 123{
server 127.0.0.1:8080;
server 127.0.0.1:8090;
}
2、ip_hash 限定ip,即每个ip访问的相同的节点服务器,session可以对应上了。
upstream 123{
ip_hash;
server 127.0.0.1:8080;
server 127.0.0.1:8090;
}
3、url_hash 限定url,即根据url现在访问相同的节点服务器。需要下载hash包使用。
4、fair 根据页面大小和效率自动分配,需要下载fair包。
四、注意
weight配置权重。upstream相应节点后weight=1,数字越大,被分配概率也越大。
down表示暂时不加入负载,什么操作让其加入我也不知道。。。
max_fails 表示最大失败次数。
fail_timeout:失败后该节点暂停的时间。
backup 其他节点处问题了访问它,保证安全性的一个操作。
ip_hash 时不能配置weight和backup。
五、nginx添加模块
linux下:
cd nginx目录
./configure --add-module=新增模块路径
make
make install
我是在windows环境下配置的。在nginx官网上下载最新稳定版nginx,解压后有一个nginx.exe文件。cmd下执行nginx,浏览器访问nginx所在ip(端口默认80)。访问成功则代表启动成功,停止服务cmd下nginx.exe -s -stop。
二、配置负载
在conf/nginx.conf中找到http {
include mime.types;...}
添加: upstream 123{
server 127.0.0.1:8080;
server 127.0.0.1:8090;
}
找到http{...}下的server {...}
添加:server {
listen 80;
server_name localhost;
location / {
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504 http_404;(目的是错误时自动跳转到下一个负载服务器)
proxy_connect_timeout 5s;
proxy_read_timeout 1s;
proxy_pass http://123;(与upstream对应)
}
以上配置可以实现服务器节点挂掉时,不影响访问。
三、nginx的四种调度算法
1、轮询默认的
upstream 123{
server 127.0.0.1:8080;
server 127.0.0.1:8090;
}
2、ip_hash 限定ip,即每个ip访问的相同的节点服务器,session可以对应上了。
upstream 123{
ip_hash;
server 127.0.0.1:8080;
server 127.0.0.1:8090;
}
3、url_hash 限定url,即根据url现在访问相同的节点服务器。需要下载hash包使用。
4、fair 根据页面大小和效率自动分配,需要下载fair包。
四、注意
weight配置权重。upstream相应节点后weight=1,数字越大,被分配概率也越大。
down表示暂时不加入负载,什么操作让其加入我也不知道。。。
max_fails 表示最大失败次数。
fail_timeout:失败后该节点暂停的时间。
backup 其他节点处问题了访问它,保证安全性的一个操作。
ip_hash 时不能配置weight和backup。
五、nginx添加模块
linux下:
cd nginx目录
./configure --add-module=新增模块路径
make
make install
相关文章推荐
- linux+nginx+php-fpm搭建学习笔记
- Nginx安装配置与部署
- 将nginx编译成静态库
- Nginx初探
- Nginx 改变错误日志打印级别
- Nginx 负载均衡 设置
- Nginx + PHP (Windows安装)
- 配置nginx,支持php的pathinfo路径模式
- 给Nginx配置一个自签名的SSL证书
- nginx配置拒绝直接访问js文件
- nginx 重中之重 event 模块
- nginx proxy_pass 后面的斜杠
- CentOS下nginx解析本地虚拟域名
- 在haproxy+nginx+php-fpm环境下访问网站URL被自动加上了nginx服务的私网端口号的故障分析
- 为什么要用nginx
- nginx 502错误
- nginx reverse proxy
- Nginx 图片防盗链
- nginx跨语言系统开发配置
- ubuntu 配置 nginx 负责均衡