windows版nginx怎样配置负载均衡

 我来答
池凯定79
2017-05-10 · TA获得超过2164个赞
知道大有可为答主
回答量:2851
采纳率:55%
帮助的人:390万
展开全部
一、 下载Nginx(nginx-1.5.8.zip)

解压到D:/serve目录下

双击运行nginx.exe,屏幕一闪而过或者在DOS里面敲打命令,如图所示:

可以看到屏幕一闪而过,接下来测试一下是否安装启动成功;

在任务管理器的进程中查看nginx.exe是否启动

若看到该映像名称,证明nginx程序已经启动成功!
这时我们就可以在浏览器中访问:http://localhost

这样我们就成功的搭建了一个nginx服务!!
Nginx+Tomcat负载均衡配置这里只需要修改Nginx的配置文件nginx.conf,让它通过tomcat来转发。
Nginx配置文件完成如下:
#使用的用户和组,window下不指定
#user nobody;
#指定工作衍生进程数(一般等于CPU总和数或总和数的两倍,例如两个四核CPU,则总和数为8)
worker_processes 1;
#指定错误日志文件存放路径,错误日志级别可选项为【debug|info|notice|warn|error|crit】
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#指定pid存放路径
#pid logs/nginx.pid;

#工作模式及连接数上限
events {
#使用网络I/O模型,Linux系统推荐使用epoll模型,FreeBSD系统推荐使用kqueue;window下不指定
#允许的连接数
#user epoll;
worker_connections 100;
}

#设定http服务器,利用他的反向代理功能提供负载均衡支持
http {
#设定mime类型
include mime.types;
default_type application/octet-stream;
#设定日志格式
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
client_header_buffer_size 1k;
large_client_header_buffers 4 4k;

access_log logs/access.log main;
#设定access log
client_header_timeout 3m;
client_body_timeout 3m;
send_timeout 3m;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
#keepalive_timeout 0;
keepalive_timeout 65;
#开启gzip模块
gzip on;
gzip_min_length 1100;
gzip_buffers 4 8k;
gzip_types text/plain application/x-javascript text/css application/xml;
output_buffers 1 32k;
postpone_output 1460;
server_names_hash_bucket_size 128;
client_max_body_size 8m;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_vary on;
#设定负载均衡的服务器列表
upstream localhost {
#设定负载均衡的服务器列表
#ip_hash;
#同一机器在多网情况下,路由切换,ip可能不同 #weigth参数表示权值,权值越高被分配到的几率越大
server 192.168.101.222:8088 max_fails=2 fail_timeout=600s;
server 192.168.101.5:8081 max_fails=2 fail_timeout=600s;
}
#设定虚拟主机
server {
listen 80;
server_name localhost;

charset UTF-8;
#设定本虚拟主机的访问日志
access_log logs/host.access.log main;
#对 "/" 启用负载均衡
location / {
root \\192.168.101.222\D:\web\apache-tomcat-6.0.37\webapps;
index index.html index.htm index.aspx;
proxy_redirect off;
#保留用户真实信息
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#允许客户端请求的最大单个文件字节数
client_max_body_size 10m;
#缓冲区代理缓冲用户端请求的最大字节数,可以理解为先保存到本地再传给用户
client_body_buffer_size 128k;
#跟后端服务器连接超时时间 发起握手等候响应超时时间
proxy_connect_timeout 12;
#连接成功后 等待后端服务器响应时间 其实已进入后端的排队之中等候处理
proxy_read_timeout 90;
#代理请求缓存区 这个缓存区间会保存用户的头信息一共Nginx进行规则处理 一般只要能保存下头信息即可
proxy_send_timeout 90;
#同上 告诉Nginx保存单个用的几个Buffer最大用多大空间
proxy_buffer_size 4k;
proxy_buffers 4 32k;
#如果系统很忙的时候可以申请国内各大的proxy_buffers 官方推荐 *2
proxy_busy_buffers_size 64k;
#proxy 缓存临时文件的大小
proxy_temp_file_write_size 64k;
proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;
proxy_max_temp_file_size 128m;
proxy_pass http://localhost;
}

error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}

}

}
四、测试
前提是分别启动两台机器的tomcat,其次启动nginx服务;
在192.168.101.23上访问nginx服务器(通过访问(项目路径)来实现对192.168.101.222和192.168.101.5这两个机器上应用程序的访问,最终实现tomcat的均衡负载)
[1]关闭192.168.101.222上的tomcat服务,访问192.168.101.23上的nginx服务,观察192.168.101.5上的tomcat是否运行;
[2]关闭192.168.101.5上的tomcat服务,访问192.168.101.23上的nginx服务,观察192.168.101.222上的tomcat是否运行;
[3]两个tomcat都启动,访问nginx服务,模拟并发用户n个,观察tomcat的运行情况;
如果[1]和[2]的tomcat都运行就说明搭建nginx代理服务成功,tomcat实现了均衡负载;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式