B2C购物商城---MMALL商城概览

B2C购物商城---MMALL商城概览

注意:

  • 商品小图原图缺失后续上传到图片服务器。不影响使用
  • 支付宝二维码是支付宝沙箱开发环境生成,不会产生真实交易,若需体验,请下载支付宝沙箱版扫描体验
  • 项目仍需优化

本项目的完成参考了慕课网happymmall的设计
项目源码在:https://github.com/LiuKay/mmall-kay-Java

涉及技术栈

Linux、Nginx、Mysql、Git、Maven、Java、Spring、SpringMVC、Mybatis

项目分支

  • master 发布版本

  • v1.0 单服务器 + FTP文件服务器

    主要技术:SSM/Guava/Jackson/Joda/注解

  • v2.0 Tomcat集群+Nginx负载均衡+Redis分布式

    在V1.0基础上进行迭代重构,主要技术Redis 、Spring Schedule、Tomcat集群、Nginx负载均衡

具体请查看对应分支详细源码,commit 提交记录可查看迭代过程及核心技术。

附本人画的一张功能清单接口思维导图:
B2C购物商城---MMALL商城概览

v1.0 单服务架构

B2C购物商城---MMALL商城概览

v2.0 Tomcat集群+Nginx负载均衡+Redis分布式
B2C购物商城---MMALL商城概览

分散技术点总结

  1. 高可用的响应对象ServerResponse编写,实现自己的
  2. 越权访问的问题:横向越权和纵向越权
  3. Guava Cache的简单使用(LoadingCache实现了ConcurrentMap接口)
  4. 忘记密码重置密码时要回答对问题,返回一个token,拿token重置密码
  5. FTP服务对接
  6. SpringMVC文件上传
  7. Properties配置文件读取
  8. joda-time编写日期格式工具
  9. mybatis-pagehelper使用
  10. mybatis批量插入,主键生成
  11. Jackson 序列化json的工具类封装
  12. 分布式Session管理:原生实现与Spring Session原理
  13. SpringMVC 全局异常处理
  14. SpringMVC 拦截器处理权限与判断登录
  15. Spring Schedule 定时任务
  16. Redis分布式锁实现原理
  17. 一致性哈希原理,Redis客户端分片ShardedJedis
  18. Nginx 静态资源映射,反向代理配置
  19. 阿里云线上项目自动化部署

……