一、方案描述:
该方案采用Nginx在服务器做负载均衡,优化一体机上请求间隔时间,以及将一体机上同步请求更改为异步请求(虽然这步对该问题没有什么大的关系,但是一体机界面上尽量采用异步请求可以给用户很好的体验)。
不多说,直接上操作步骤:
二、操作步骤:
1.1、下载Nginx:
服务器系统:Windows 2012 Server R2
Nginx下载地址: http://nginx.org/en/download.html
我下载的是稳定版 nginx/windows-1.16.1
在 E:\NginxForWindows_server_2012
目录下将 nginx-1.16.1.zip
解压到完整路径 E:\NginxForWindows_server_2012\nginx-1.16.1\nginx-1.16.1\
, 如图所示:
1.2、 启动Nginx(cmd命令启动)
cd 到Nginx安装目录下面;
输入 start nginx.exe 命令即启动Nginx;
Nginx的其他命令:
在nginx目录下打开cmd窗口
运行命令:start nginx 启动nginx服务
运行命令:nginx -s stop 停止nginx服务
运行命令:nginx -s reload 重载配置
运行命令:taskkill /f /t /im nginx.exe 关闭nginx其他服务,这样才能彻底关闭
1.3、 验证
访问 http://localhost/
nginx默认使用80端口,但我的80端口被占用,查看log日志提示80端口被占用,修改nginx配置文件:
在conf目录下,修改nginx.conf 将监听端口改为8088端口:
访问 http://localhost:8088
1.4、配置文件:
修改conf目录下的nginx.conf文件
worker_processes: 设置工作进程数,跟CPU内核数有关,有人说是CPU内核数的两倍,查看Cpu内核数:Windows键+R,调出运行窗口,输入wmic+回车,输入命令cpu get numberofcores
工作进程数可根据实际情况设定,不一定绝对是cpu内核的两倍;
worker_rlimit_nofile 100000; 进程最大打开文件数,我这里设置的是100000
listen 8088; nginx要监听的端口
server_name localhost; nginx监听的服务器Ip
路由规则:
location / {
#root html;
#index index.html index.htm;
proxy_pass http://WebService
; 装配路由;
proxy_set_header Host $http_host; 这一句的作用是让每次访问都加上upstream配置的server host(详情见文档: https://www.cnblogs.com/shihuc/p/14208349.html);
}
设置服务器列表,这里的webService跟上面的形成对应,注意location,listen,server_name都在server里面配置
upstream WebService
{
server localhost:9122;
server localhost:9123;
server localhost:8889;
server localhost:8890;
}
upstream配置在http里面;
到这里我们已经具备了可以支持一定高并发的情景了,接着就是将nginx配置成服务,在服务器重启的时候,同时启动nginx;
关于如何配置Nginx开机启动,我推荐本文:
https://blog.csdn.net/xiaojin21cen/article/details/84622517#2_37