本次项目的项目架构图:
Nginx主要部署的是 项目的静态资源,即前端项目。通过Nginx的反向代理,将请求发给Tomcat服务器。然后获取数据通过MySQL的主从复制,主库负责更新数据,从库负责查询数据,实现读写分离,redis是将数据存放在缓存里面,让用户更高效的获取数据,同时也降低了,MySQL的负载。
部署环境说明:
服务器:192.168.138.100(服务器A)
Nginx:部署前端项目,配置反向代理。
MySQL:主从复制的主库
192.168.138.101(服务器B)
jdk:运行Java项目
git:版本控制
maven:项目构建工具
jar:springboot项目打成jar包基于内置的tomcat运行
MySQL:主从复制的从库。
172.17.2.94(服务器c)
redis:缓存中间件。
前端项目部署:
对Nginx进行配置,主要对location进行配置,
此处的html/dist 的index.html 是本项目的主页,不是Nginx的主页。
然后对反向代理进行配置:
其中 rewrite 是起到一个截取请求路径 的作用,
在前端请求中多了一个 api路径 所以是请求不到后端服务的,所以需要对请求进行截取,把api给去掉,完整的就是 http://192.168.138.101/employee/login 这才是完整的请求。
后端部署配置:
在配置好环境后,编写一个脚本,自动化部署。
修改项目权限
执行脚本 即可。