是一个服务器软件
能做什么
- 反向代理
- 负载均衡
- 动静分离
特点
高性能http反向代理服务器
占用内存少 并发能力强
反向代理
正向代理
客户端通过设置代理服务器 访问
反向代理 :
请求发给代理服务器 代理服务器和真实的服务器对外暴露一个ip
负载均衡:
分发到不同的服务器
动静分离:
静态资源和动态资源给分开
nginx的安装
安装依赖
安装pcre openssl zlib
安装nginx
方法1
拖入安装文件
jar 解压
进入解压之后的目录 执行 ./configure
使用 make &&make install
安装成功之后 会有/usr/local/nginx
目录 里面有sbin 里面有启动脚本
启动
./nginx
查看
ps -ef | grep nginx
配置文件在nginx config nginx.config 里面
看防火墙开放端口
方法2
更新yum源
sudo rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
查看
sudo yum repolist
安装
sudo yum install nginx
教程如下
https://qizhanming.com/blog/2018/08/06/how-to-install-nginx-on-centos-7
开机启动
sudo systemctl enable nginx
启动服务
sudo systemctl start nginx
停止服务
nginx -s stop
sudo systemctl restart nginx
查看
ps -ef | grep nginx
有两个进程 nginx的
防火墙看开放端口
firewall-cmd --list-all
看配置
看已yum安装程序
rpm -qa
看安装程序的地方 和一些配置的地方
rpm -ql nginx
防火墙设置
Centos7默认安装了firewalld,如果没有安装的话,可以使用 yum install firewalld firewalld-config
进行安装。
打开 http
sudo firewall-cmd --zone=public --permanent --add-service=http
重启
sudo firewall-cmd --reload
1.启动防火墙
systemctl start firewalld
2.禁用防火墙
systemctl stop firewalld
3.设置开机启动
systemctl enable firewalld
4.停止并禁用开机启动
sytemctl disable firewalld
5.重启防火墙
firewall-cmd --reload
6.查看状态
systemctl status firewalld
或者 firewall-cmd --state
nginx配置文件 nginx.config
全局块
nginx 并发处理的数量
如这是能并发处理的数量
worker_processes auto;
events块
http块
配置最频繁
里面含了server
注释是例子
在
localtion /{
配了自己本机的ip :8080
}
成功转发
tomcat 放在了8009端口
根据路径的不同转发到不同的路径和端口
根据不同的路径匹配不同的端口
location ~ /aaa{
proxy_pass http://localhost:8001
}
location ~ /bbb{
proxy_pass http://localhost:8002
}
正则
正则:
负载均衡
image.png配置
就是一个服务名
upstrea myserver{
}
插播
tomcat 在webapps中 创建一个edu文件夹 在文件夹中放 a.html
访问路径
edu/a.html
轮询 权重
iphash(浏览器发送了ip hash到对应的一个服务器)
可以解决session共享方式
根据响应时间分配 时间短的先分配
动静分离
方法1 做成一个单独的域名 静态资源放在另外一个服务器上
方法2 可以通过expires 参数设置 一个资源过期时间 如3d 返回状态码是304 就利用服务器缓存 但是如果检测到服务器发生了变化 (通过对比服务器最近一次跟新时间) 就用跟新
通过nginx 中配置
autoindex on 列出目录的文件
image.pngnginx 高可用
nginx 如果宕机
keepalived 软件
做多个nginx
但是还要配一个 虚拟ip
- 主服务器mater
- 从服务器backup
步骤 两个服务器都安装nginx 和keepalived
yum install keeplived -y
keepalived的配置
nginx 的原理
一个master 多个worker 进程
争抢的方式
- 利于热部署
worker 的连接数 有2个或者4 个
支持最大并发数
最大连接数/2 或者4
网友评论