秒杀商城项目----Dubbo+Zookeeper分布式秒杀系统模块分析
优化为分布式秒杀系统
- 一. Seckill-cache——缓存模块
- ①. RedisConfig_redis配置信息
- ②. RedisPoolFactory_jedis连接池
- ③. RedisLockImpl_Redis分布式锁服务实现(注册服务到Dubbo)
- ④. RedisServiceImpl_redis服务实现(注册服务到Dubbo)
- ⑤. application.properties配置
- 二. Seckill-commons——公共模块
- ①. 服务接口
- 1. DLockApi——分布式锁接口
- 2. RedisServiceApi——redis 服务接口
- 3. GoodsServiceApi——商品服务接口
- 4. MqProviderApi——消息队列服务接口
- 5. OrderServiceApi——订单服务接口
- 6. SeckillServiceApi——秒杀服务接口
- 7. UserServiceApi——用户服务接口
- ②. 实体类
- 1. Goods
- 2. OrderInfo
- 3. SeckillGoods
- 4. SeckillOrder
- 5. SeckillUser
- ③. GlobalExceptionHandler_全局异常处理器
- ④. util工具包
- 1. DBUtil——数据库连接工具
- 2. JsonUtil——json 工具类
- 3. MD5Util——MD5工具类
- 4. UUIDUtil——UUID工具类用于生成session
- 5. ValidatorUtil——手机号码格式校验工具
- 6. VerifyCodeUtil——验证码创建和计算
- 7. IsMobile——自定义注解效验手机号
- ⑤. result结果集返回封装
- 1. Result——用户接口返回结果
- 2. CodeMsg——响应结果状态码
- 三. Seckill-user——用户模块
- ①. 实体类
- 1. SeckillUser——秒杀用户信息
- ②. Mapper接口和Mapper.xml文件
- 1. SeckillUserMapper
- 2. SeckillUserMapper.xml
- ③. UserServiceImpl——用户服务实现类(服务暴露到Dubbo,服务引用)
- 四. Seckill-goods——商品模块
- ①. GoodsMapper——goods 表的数据库访问层
- ②. GoodsServiceImpl商品服务实现(注册服务到Dubbo)
- ③. SeckillServiceImpl秒杀服务实现(注册服务到Dubbo)
- 五. Seckill-order——订单模块
- ①. OrderMapper——seckill_order 表数据访问层
- ②. OrderServiceImpl订单服务实现(注册服务到Dubbo)
- 六. Seckill-mq——消息队列模块
- ①. MQConfig——通过配置文件获取消息队列
- ②. MqConsumer——MQ消息接收者, 消费者
- ③. MqProviderImpl消息队列服务化(注册服务到Dubbo)
- 七. Seckill-gateway——网关模块
- ①. Config配置
- 1. AccessInterceptor——用户访问拦截器
- 2. AccessLimit——用户访问拦截的注解
- 3. UserContext——使用ThreadLocal保存用户
- 4. UserArgumentResolver——解析请求,并将请求的参数设置到方法参数中
- 5. WebConfig——自定义web配置
- 6. Sentinel服务限流
- ②. Controller接口
- 1. Index——根路径,默认页面
- 2. UserController——用户接口
- 3. GoodsController——商品模块接口
- 4. OrderController——订单服务接口
- 5. SeckillController——秒杀接口
一. Seckill-cache——缓存模块
①. RedisConfig_redis配置信息
②. RedisPoolFactory_jedis连接池
③. RedisLockImpl_Redis分布式锁服务实现(注册服务到Dubbo)
④. RedisServiceImpl_redis服务实现(注册服务到Dubbo)
⑤. application.properties配置
二. Seckill-commons——公共模块
①. 服务接口
1. DLockApi——分布式锁接口
2. RedisServiceApi——redis 服务接口
3. GoodsServiceApi——商品服务接口
4. MqProviderApi——消息队列服务接口
5. OrderServiceApi——订单服务接口
6. SeckillServiceApi——秒杀服务接口
7. UserServiceApi——用户服务接口
②. 实体类
1. Goods
2. OrderInfo
3. SeckillGoods
4. SeckillOrder
5. SeckillUser
③. GlobalExceptionHandler_全局异常处理器
④. util工具包
1. DBUtil——数据库连接工具
2. JsonUtil——json 工具类
3. MD5Util——MD5工具类
4. UUIDUtil——UUID工具类用于生成session
5. ValidatorUtil——手机号码格式校验工具
6. VerifyCodeUtil——验证码创建和计算
7. IsMobile——自定义注解效验手机号
⑤. result结果集返回封装
1. Result——用户接口返回结果
2. CodeMsg——响应结果状态码
三. Seckill-user——用户模块
①. 实体类
1. SeckillUser——秒杀用户信息
②. Mapper接口和Mapper.xml文件
1. SeckillUserMapper
2. SeckillUserMapper.xml
③. UserServiceImpl——用户服务实现类(服务暴露到Dubbo,服务引用)
四. Seckill-goods——商品模块
①. GoodsMapper——goods 表的数据库访问层
②. GoodsServiceImpl商品服务实现(注册服务到Dubbo)
③. SeckillServiceImpl秒杀服务实现(注册服务到Dubbo)
五. Seckill-order——订单模块
①. OrderMapper——seckill_order 表数据访问层
②. OrderServiceImpl订单服务实现(注册服务到Dubbo)
六. Seckill-mq——消息队列模块
①. MQConfig——通过配置文件获取消息队列
②. MqConsumer——MQ消息接收者, 消费者
③. MqProviderImpl消息队列服务化(注册服务到Dubbo)
七. Seckill-gateway——网关模块
①. Config配置
1. AccessInterceptor——用户访问拦截器
2. AccessLimit——用户访问拦截的注解
3. UserContext——使用ThreadLocal保存用户
4. UserArgumentResolver——解析请求,并将请求的参数设置到方法参数中
5. WebConfig——自定义web配置
6. Sentinel服务限流
②. Controller接口
1. Index——根路径,默认页面
2. UserController——用户接口
3. GoodsController——商品模块接口
4. OrderController——订单服务接口
5. SeckillController——秒杀接口
秒杀商城项目----Dubbo+Zookeeper分布式秒杀系统模块分析相关推荐
- 分布式商城项目--dubbo 服务的发布和引用。
分布式商城项目–dubbo 服务的发布和引用. dubbo服务需要zookeeper服务的支持,之前我们已经介绍过zookeeper的安装配置,这里就不在赘述 1.启动zookeeper 2. Pro ...
- (五)springmvc+mybatis+dubbo+zookeeper分布式架构 整合 - maven构建根项目
上一篇我们介绍<springmvc+mybatis+dubbo+zookeeper分布式架构 整合 - maven模块规划>,从今天开始,我们将对代码的每一个构建做详细的记录,能够帮助大家 ...
- 客户关系管理系统 java_Java高级项目实战02:客户关系管理系统CRM系统模块分析与介绍...
先来CRM系统结构图: 每个模块作用介绍如下: 1.营销管理 营销机会管理:针对企业中客户的质询需求所建立的信息录入功能,方便销售人员进行后续的客户需求跟踪与联系,提高企业客户购买产品的几率. 营销开 ...
- 秒杀商城项目----全局异常处理和加入缓存预热,商品结束秒杀标记 Map
全局异常处理和加入缓存预热 一. 全局异常处理 二. 自定义异常 三. 加入缓存预热 四. 商品结束秒杀标记 map 一. 全局异常处理 当我们业务代码throw抛出异常信息时,异常拦截器进行判断异常 ...
- 谷粒商城项目笔记之分布式基础(一)
谷粒商城项目之分布式基础 目录 谷粒商城项目之分布式基础 前言 1 项目简介 1.1 项目背景 1.1.1 电商模式 1.1.2 谷粒商城 1.2 项目架构图 1.2.1 项目微服务架构图 1.2.2 ...
- 商城项目01 _电商系统基本模式、分布式基础概念、微服务架构图、微服务划分图
文章目录 ①. 电商系统基本模式 ②. 分布式基础概念 ③. 微服务架构图详解 ④. 微服务划分图 ①. 电商系统基本模式 ①. B2C模式 就是我们经常看到的供应商直接把商品卖给用户,即" ...
- SpringBoot+Dubbo+Zookeeper分布式项目打包时子模块依赖找不到解决方案
我的个人网站:等不见天亮等时光 问题描述:子模块打包依赖其他的子模块,打包显示找不到jar包 解决方案:由于springboot打包和maven打包最后出来的jar包不同需要在pom中新增以下插件 & ...
- springmvc+mybatis+dubbo+zookeeper分布式架构
框架简介--主要定位于互联网企业架构,已内置企业信息化系统的基础功能和高效的代码生成工具,包括:系统权限组件.数据权限组件.数据字典组件.核心工具 组件.视图操作组件.工作流组件组件.代码生成等.采用 ...
- (一)springmvc+mybatis+dubbo+zookeeper分布式架构 整合 - 平台导语简介
导语: 怎么搭建一套满足企业未来发展的通用架构平台?现在分布式.微服务.云平台的口号是如此的响亮,技术更新是如此的迅速,很多架构师选择使用dubbo.spring cloud的方案去帮助企业搭建分布式 ...
最新文章
- R语言ggplot2可视化:可视化堆叠的直方图、在bin中的每个分组部分添加数值标签、使用position_stack函数设置
- c语言小程序跑马灯,微信小程序实现跑马灯效果(完整代码)
- Good Time 冲刺 六
- Simulink之不可控整流电路
- Loadrunner11完美破解小笔记
- digiKam 6.1.0 发布,相片管理工具
- 1月13 ROS中的TF与URDF——机器人(1.1位姿几何基础——刚体位置和姿态描述)
- MySQL 数据库简介
- 64位的系统最大可以支持多大内存
- 谷歌SEO入门的基础知识
- 如何手机桌面加计算机,教你自制手机、电脑壁纸|手机一键加字、加光晕特效,4步搞定!...
- Linux如何ping本机IP,Linux ping6 本地ipv6地址无效的参数
- 用latex写毕业论文--设置附录、参考文献、致谢环境
- React 最好的 ui 组件库集锦
- python第三方库文件传输_慢步学习,python库文件概述,再来点第三方库文件安装的干货...
- 关心国事-周鸿祎离开雅虎真相 自称土鳖更喜欢创业
- 关于对vue-particle-effect-button的使用
- 矛与盾的较量-南美洲巅峰对决
- ios 新浪微博网页登陆分享 {error:userinfoerror pos:5}
- (附源码)springboot大学毕业设计管理系统 毕业设计030945
热门文章
- Unity 修改画面渲染顺序的几种实现方案
- gcc 生成动态链接库
- Unity2021版本UnityWebRequest使用方法参考
- 细说java泛型(终)
- 接口自动化测试学习整理
- 50个创意进度条优秀设计(附PSD下载)
- js常见正则验证:邮箱 手机号 电话号码 账号 去掉空格 身份证
- java实现LRU、FIFO缓存
- Surging -Demo部署
- @liveqing/liveplayer 视频截图Failed to execute ‘toDataURL‘ on ‘HTMLCanvasElement‘: Tainted canvas处理