瑞吉外卖项目优化
2023.8.6 瑞吉外卖项目-优化篇
介绍
对瑞吉外卖项目进行优化,实现MySQL数据库读写分离,Nginx服务器部署前端项目,实现反向代理,Redis数据库对数据进行缓存,三台服务器的需要实现的功能分别为:
本地的Linux服务器A(MySQL数据库-写操作,Nginx服务器-部署前端项目,配置反向代理)
本地的Linux服务器B(MySQL数据库-读操作,Tomcat服务器-部署后端项目,安装好git、maven、jdk)
阿里云轻量型服务器C(Redis数据库,做客户端的短信验证码和菜品查询数据的缓存)
一、实现数据库主从分离
详情请看2023.8.4 使用docker拉取MySQL镜像,配置MySQL读写分离
二、在服务器A中实现Nginx服务器部署前端项目,进行反向代理
首先创建Nginx服务器,详见2023.8.5使用docker 安装Nginx服务器
关闭Nginx服务器,进入conf.d中配置default.conf文件
location ^~ /api/ {
1
2rewrite \^/api/(.\*) /1 break;
proxy\_pass http://服务器B的ip地址:8080;}
将dist文件夹通过finalshell上传到/tomato/nginx/html 文件夹中
启动nginx
三、在服务器B中部署后端程序
安装好jdk、git、maven
新建/usr/local/javaapp目录
在idea中修改图片存储位置
reggie:1
path:/usr/local/img/
使用finalshell上传img文件夹到 /usr/local/img
在idea中使用maven打包出jar,并用finalshell上传到/usr/local/javaapp中
使用nohup java -jar reggie_take_out-1.0-SNAPSHOT.jar &> reggie_take_out.log &命令运行java程序
使用 ps -ef|grep java 查看java程序是否运行起来
四、设置防火墙
分别在服务器A和B进行一下操作
- 开放端口
firewall-cmd –zone=public –add-port=80/tcp –permanent
firewall-cmd –zone=public –add-port=8080/tcp –permanent - 重启防火墙
firewall-cmd –reload - 查看端口是否开启
firewall-cmd –zone=public –list-ports
看到 80/tcp 8080/tcp 表示开放成功
- 开放端口