Nginx学习-2.1 简单实现负载均衡
来源:互联网 发布:淘宝联盟提现的日期 编辑:程序博客网 时间:2024/06/06 13:08
这个文章简洁容易复制,基本上复制配置文件nginx.conf 修改server下面的3个IP为自己的3个tomcat服务器的IP就可以运行 。
1. 安装
1) 从Nginx官网下载页面(http://nginx.org/en/download.html)下载Nginx最新版本(目前是1.5.13版本)安装包;
2) 解压后复制到部署目录。
2. 启动和停止Nginx
Nginx目前只支持命令行操作,操作前先进入Dos命令环境,并进入Nginx部署目录。
1) 启动Nginx:start nginx
2) 停止Nginx:nginx -s stop
3) 修改配置后重启:nginx -s reload
这三个命令可分别做成bat文件,放在部署目录下,方便后续操作。
start nginx.bat文件内容:start nginx
stop nginx.bat文件内容:nginx -s stop
reload nginx.bat文件内容:nginx -s reload
3. 反向代理配置
修改部署目录下conf子目录的nginx.conf文件(如nginx-1.5.13\conf\nginx.conf)内容,可调整相关配置。
反向代理配置示例:
location / {
#设置主机头和客户端真实地址,以便服务器获取客户端真实IP
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#禁用缓存
proxy_buffering off;
#设置反向代理的地址
proxy_pass http://192.168.1.1;
}
代理地址根据实际情况修改。
4. 负载均衡配置
nginx 的 upstream默认是以轮询的方式实现负载均衡,这种方式中,每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
另外一种方式是ip_hash:每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
负载均衡配置示例:
upstream backend {
#ip_hash;
server 192.168.1.251;
server 192.168.1.252;
server 192.168.1.247;
}
server {
listen 80;
server_name trffweb;
location / {
#反向代理的地址
proxy_pass http://backend;
}
}
Upstream命名和服务器地址根据实际情况修改。
5. 完整配置示例
nginx.conf:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream backend {
#ip_hash;
server 192.168.1.251;
server 192.168.1.252;
server 192.168.1.247;
}
server {
listen 80;
server_name 2;
location / {
#设置主机头和客户端真实地址,以便服务器获取客户端真实IP
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#禁用缓存
proxy_buffering off;
#反向代理的地址
proxy_pass http://backend;
}
}
}
注意点:
1.
#反向代理的地址
proxy_pass http://backend;
必须和 upstream backend ,"backend" 一致,否则报500。
2.该文只实现了请求转发 ,请求转发只是负载均衡的第一步,还要处理session回话问题。
session问题请继续参考我的其他博文。
3.server中的3个地址如何改为项目地址以?
- Nginx学习-2.1 简单实现负载均衡
- nginx简单实现负载均衡
- nginx 负载均衡简单实现
- nginx简单负载均衡实现
- nginx简单实现负载均衡
- 学习Nginx反向代理实现简单负载均衡
- 【知了堂学习笔记】Nginx+Tomcat实现简单负载均衡
- Nginx安装以及简单实现负载均衡
- nginx实现简单的负载均衡
- nginx实现简单的负载均衡
- 简单东西-Nginx实现Tomcat负载均衡
- Nginx+Tomcat实现简单的负载均衡
- Tomcat7+Nginx实现简单的负载均衡
- 学习 Nginx + tomcat 实现负载均衡
- Nginx实现负载均衡
- nginx 实现负载均衡
- Nginx实现负载均衡
- Nginx实现负载均衡
- Nginx1.1 Nginx配置文件详细说明
- 欢迎使用CSDN-markdown编辑器
- 使用代码构建布局及设置常用属性
- 题目:查找子字符串
- 命令行发布jar到私服
- Nginx学习-2.1 简单实现负载均衡
- spring 定时任务执行两次解决办法
- SPI总线之CPOL CPHA
- 哈希表的综合应用(创建、处理冲突、查找成功和失败的次数)
- OC中封装,拆包基本数据类型
- 初学使用Gradle创建一个Java项目总结
- 网络相关
- 一次完整的HTTP事务是怎样一个过程?
- JavaScript学习(5.7.1):with语句