性能测试全栈笔记:49.Nginx-理论/应用部署/配置

作者: admin 分类: 性能专题 发布时间: 2021-12-28 15:03

性能测试全栈笔记

四十九、Nginx-理论/应用部署/配置

Nginx简介:高性能反向代理服务器,官网数据显示每秒tps在50w左右

  • web服务器:转发请求,nginx,apache,类似于服务员
  • 应用服务器:tomcat,处理动态的语言,处理逻辑,类似于厨师
  • 官网:https://www.nginx.com/

安装步骤:安装Nginx前需要先安装pcre、zlib、OpenSSL等模块,手动安装比较繁琐,使用yum安装比较方便,具体安装步骤如下:

1.默认情况下CentOS7中没有nginx的下载源,先手动添加官方源:[root@nginx ~]# rpm-Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

2.安装Nginx:[root@nginx ~]# yum -y install nginx

查看nginx版本号:

[root@nginx conf.d]# nginx -v
nginx version: nginx/1.20.2

3.配置Nginx:

Nginx默认安装在/etc/nginx目录,nginx.conf为主配置文件

编辑nginx.conf:vi nginx.conf

修改worker_processes后面的数字为当前虚机cpu核数,这里是2,记得后面有分号:worker_processes 2;

思考:命令获取cpu核数:lscpu

4.Nginx中,每个项目都有属于自己的一个配置元件,配置了本项目的访问方式:

1)进入nginx下conf.d目录,包含了一个默认的配置文件模板:default.conf

2)重命名配置文件:mv default.conf pinter.conf

3)编辑pinter.conf配置文件,在server模块前新增:

upstream www.pinter.com{
server 192.168.25.152:8080 weight=10 max_fails=2 fail_timeout=30s;
server 192.168.25.155:8080 weight=10 max_fails=2 fail_timeout=30s;
}

重点:

  • 其中,IP地址为pinter所在的虚机地址
  • weight:权重,意思是系统nginx给那台tomcat更多的活,一般情况下,新机器可以分配的比例大一些

4)将server_name修改为:www.pinter.com(根据实际情况修改),access.log的注释去掉,后面文件名改为项目名称

  • server_name www.pinter.com;
  • access_log /var/log/nginx/pinter.access.log main;

5)将location中的root,index注释掉,新增proxy_pass http://www.pinter.com;

location / {
#root /usr/share/nginx/html;
#index index.html index.htm;
proxy_pass http://www.pinter.com;
}

注意:proxy_pass后的域名必须和upstream名称一致

5.conf.d目录其实可以放多个项目,配置方式同上:

6.启动/重启/停止nginx:

  • 启动nginx,任意目录下执行:nginx(没有报错即成功)
  • 重启nginx:nginx -s reload
  • 停止ngin:nginx -s stop

7.修改host文件,进行域名映射关系操作,window系统host文件路径:C:\Windows\System32\drivers\etc\hosts,Mac系统在:/etc/hosts

新增下面两行:

192.168.25.159 www.pinter.com
192.168.25.159 www.oa.com

注意:请使用管理员模式打开并修改,不然可能会报错。

最后用域名访问pinter和oa项目:

pinter项目:Pinter

OA项目:Itcast OA – Itcast OA

如果打开异常,排查:

  • 单独从IP地址访问是否正确;
  • pinter.conf和oa.conf配置文件是否正确。

如果OA登录不成功:为Nginx的session问题

问题解决:

1.开发改代码架构,每台机器备份session信息

2.改nginx配置文件:

upstream下面添加:ip_hash;

upstream www.oa.com{
ip_hash;
server 192.168.25.153:8081 weight=10 max_fails=2 fail_timeout=30s;
server 192.168.25.158:8081 weight=10 max_fails=2 fail_timeout=30s;
}

至此,Nginx安装,配置,部署过程分享完毕,请按步骤操作。

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表回复