nginx的作用
- 反向代理
- 负载均衡
- 动静分离
nginx中常用的一些命令
./nginx 开启nginx
./nginx -s stop 关闭nginx
./nginx -s reload 重新加载nginx
1.nginx实现反向代理
1.准备一个springboot工程 这里我把这个springboot工程打成jar包放在了根目录下
2.进到vi usr/nginx/conf/nginx.conf 添加一个代理端口 proxy_pass
回到 cd /usr下 java -jar springboot打成的jar包名 运行
我们去看浏览器
2.负载均衡
网站的访问量越来越大,服务器的服务模式也得进行相应的升级,比如分离出数据库服务器、分离出图片作为单独服务,这些是简单的数据的负载均衡,将压力分散到不同的机器上
测试以下负载均衡:
准备条件 两台web应用服务器 (执行两台虚拟机)
在配置文件中修改配置
再测试:
刷新一下
我们可以看到 这里的负载均衡执行的策略是 轮询
负载均衡的策略:①轮询(默认),②权重(在配置文件中 应用服务器加上 weight并设置值),③ ip_hash:每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器
2.动静分离
springboot支持thymeleaf 再pom.xml文件中加上依赖
1.创建静态资源 css 、images、js
2.把static文件夹放在 nginx文件夹里(同级的有html)
3.修改配置文件
重启nginx 运行springboot工程 (java -jar 打包的jar文件)
运行
3.nginx的高可用
1.准备工作
1.需要两台nginx服务器。(192.168.31.55 192.168.31.243)
2.需要keepalived
3.需要虚拟ip (192.168.31.89)
2.在两台服务器安装keepalived
yum install keepalived:安装keepalived(默认安装在 /etc/keepalived)
rpm -q -a keepalived :检查是否安装成功
systemctl stop keepalived.service :停止keepalived
3.修改主从 (在/etc/keepalived 有一个文件keepalived.conf)
在脚本安装的位置 --》src/添加一个文件
测试
在浏览器地址栏输入虚拟ip地址192.168.31.89 (主的里边我放了样式)
这里 把主服务器的nginx和keepalived关闭 再次访问