1 nginx简介
nginx官网:nginx
nginx中文文档: Nginx中文文档
nginx是一个高性能的反向代理和负载均衡中间件。
1.1 nginx的优点
在性能上,Nginx占用很少的系统资源,能支持更多的并发连接,达到更高的访问效率;在功能上,Nginx是优秀的代理服务器和负载均衡服务器;在安装配置上,Nginx安装简单、配置灵活。Nginx支持热部署,启动速度特别快,还可以在不间断服务的情况下对软件版本或配置进行升级,即使运行数月也无需重新启动。
热部署:应用正在运行的过程中升级软件,而不用重启软件。
1.2 nginx的功能
nginx不能直接处理java或者php等逻辑,nginx只是一 -个中转站 (类似于路山器)。他可以把静态资源的请求直接返回给前端静态资源,把动态资
源(接口)请求转发给相应的后端,例如tomcat,这些tomcat没有nginx也是可以访问的。因为大部分情况下,这些后端程序的端口是放到防火墙
里面的(不对外暴露)客户端想要访问这些服务,直接访问nginx的服务即可。
nginx不能直接处理java或者php等逻辑,nginx只是一个中转站(类似于路由器) ! ! !
1.3反向代理
反向代理的意思是你可以访问到服务,但是你访问的服务不是真正的服务,只是nginx给你转发的服务,反向代理成功的隐藏了服务的真
实ip。类似于qq匿名聊天,你可以和网友聊天,但是不知道那个网友真正是谁。可以有效的提高系统的安全性。
作用:把压力给均分
1.4负载均衡
1.4.1:轮询
每个服务器按照时间顺序逐一分配到不同的后端服务器上,如果服务器挂掉,则自动剔除
1.4.2:指定权重
指定轮询几率,weight和访问比率成正比,用于后端服务性能不均的情况
1.4.3:ip绑定
每个请求按照客户端的ip的hash结果来分配,这样每个客户端进来的请求就会进到一个服务器里面(集群环境中采用此种方案可以不用考
虑session共享问题,或者服务器缓存问题)
1.4.4:最少连接
每次请求都会进到最少连接数的服务器,然后再考虑轮询。
2.nginx安装
安装步骤
#安装gcc yum install gcc-c++ #安装pcre yum install -y pcre pcre-devel #安装zlib yum install -y zlib zlib-devel #安装openssl yum install -y openssl openssl-devel #下载nginx wget http://nginx.org/download/nginx-1.18.0.tar.gz #解压 tar -zxvf nginx-1.18.0.tar.gz #进入到nginx目录 cd nginx-1.18.0 #编译 ./configure make make install #启动 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf #重启 /usr/local/nginx/sbin/nginx -s reload