GitHub开源电商项目mall-二次开发实战与分享
基于GitHub开源项目进行扩展开发实战,持续学习并输出笔记!!!
持续更新ing~
大神项目推荐!开源项目地址 mall-github
作者扩展开发项目地址
后端
前端-管理端
前端-电商端
学习笔记都存放在 语雀 平台,但因为语雀知识库只有充值了会员才可以设置为公开知识库,故在CSDN这边放的是每一篇文档的链接
项目咨询&答疑-作者联系方式
1. 语雀链接-项目环境部署
此篇是项目环境部署,部署成功后即可idea启动服务进行本地开发了~
- VMware虚拟机部署CentOS 7 & NAT模式联网
- 下载&安装 Dockers
- 部署Portainer(基于Kubernetes容器管理平台)
- 安装docker compose & 统一部署项目环境
- 本地配置&运行 nginx
- 本地配置&运行 前后端项目
2. 语雀链接-项目代码部署
此篇是学习如何使用Docker Desktop+DockerFile持续集成和部署服务
- 安装Docker Desktop
- 登录Docker Hub,创建个人镜像仓库
- IDEA、VSCode 安装Docker插件
- Java项目的DockerFile,构建镜像
- Vue(Nodejs)项目的DockerFile + nginx.conf,构建镜像
- 运行Docker容器
3. 语雀链接-数据加密传输
RSA + 加盐 加密密码
- 生成 RSA 私钥/公钥 .pem文件
- 前端mall-admin-web项目使用公钥加密密码
- 后端mall-swarm项目使用私钥解密 加密后的密码
- 扩展:spring security 密码模式-用户名&密码校验 调用链路
4. 语雀链接-统一异常处理
统一异常处理 + 错误码 + 项目结构优化
- 错误码枚举类规范化
- 项目目录结构规范化
- 统一异常处理类实现思路学习
5. 语雀链接-全局链路追踪
- 设计目的&思路
- 集成spring-cloud-sleuth + spring-cloud-zipkin + log4j日志框架的MDC
- traceId生成规则
- 后续完善&优化思路
6. 语雀链接-统一日志格式
// TODO 理想日志格式设计(初稿):
- 机器IP - ip
- 机器分组 - group(多机房:可能有 物理/程序 进行环境分组隔离)
- 环境标 - env(生产环境pro、主干测试环境test、开发测试环境dev)
- traceId - traceId(全局链路追踪唯一标识)
- 服务名 - service(大型复杂的项目一般会有多个服务)
- 类型 - type (可分为 biz(自身服务业务处理)、mq(消息队列)、cache(缓存)、db(数据库)、upStream(上游发起调用)、downStream(调用下游服务)、test(开发调试输出的临时日志)、config(读取配置中心))
- 调用的类 - className (类的全限定名)
- 调用的方法 - method
- 请求体JSON - request:{ … }
- 响应体JSON - response:{ … }