Skip to content
/ Seckill Public

使用中间件技术调优的商城秒杀项目

Notifications You must be signed in to change notification settings

SNIIN/Seckill

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Seckill 秒杀项目第二版(分布式应用)

目前已完成数据库分库、服务拆分、注册、通信。

服务拆分后的拓扑图:

image

测试性能

在err率为0,99%请求可以在100ms内处理的情况下测试得到的最大吞吐量: image

相对于单机应用的优化

  • 应用拆分、数据库拆分,资源得到扩展,系统有横向扩展能力,支持在docker swarm上部署
  • 优化rabbitmq处理逻辑,解决了重复限购的问题
  • 修改此前登录bug,确保用户至始至终只有一个token
  • 使用lua脚本原子化了许多redis操作,减少网络请求
  • 引入了异步响应式的网关,可以快速过滤许多不合理的请求
  • 网关添加令牌桶限速+阻塞队列缓存请求,用户秒杀将得到更快地反馈,系统也将容纳更多的秒杀请求。

About

使用中间件技术调优的商城秒杀项目

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published