基于.Net 技术栈剖析电商项目
一. 业务背景
1. 计划
以商城项目为基础,剖析秒杀功能、购物车功能等
先把单体架构优化到极致,然后向微服务架构转变,并分析当中遇到的各种问题。
2. 用到的技术栈和工具
服务器:centos8
数据库:MySQL 5.7 ----集群
基础框架:Asp.Net Core +EF Core + Dapper
日志框架:待定
缓存框架:redis 5.0 ----集群
消息队列:RabbitMQ
负载均衡:Nginx
消息总线框架:CAP
分布式事务:待定
配置中心:待定
测试工具:Jmeter
其它微服务组件:Consul + IDS4 + Polly
静态资源处理:CDN + 静态页面
前端:uni-app (基于Vue)
最终部署:K8S
其它语法:Lua
涉及到的一些问题的解决方案:
Redis 雪崩、击穿、穿透的解决:
分布式ID的解决:
恶意请求的解决:
重复消费的解决:
如何防黄牛:
二. 架构图
后续计划中
三. 系列章节
阶段一:单体架构系列
第二节:抢单流程优化1(小白写法→lock写法→服务器缓存+队列(含lock)→Redis缓存+原子性+队列【干掉lock】)
第四节:抢单流程优化3(lua整合限流、购买限制、方法幂等、扣减库存)
第六节:基于Cap框架引入事件总线机制(RabbitMQ+SQLServer) 和 下单成功后的方案剖析
第七节:Nginx限流和负载均衡、页面cdn、IIS部署优化、后续计划
阶段二:核心方案和组件积累
第二节:微服务网关GateWay、加密算法、微服务鉴权JWT、分布式ID生成方案
第三节:lua详解、OpenResty详解、网站首页高可用(nginx+lua+redis实现广告缓存)
第四节:数据同步解决方案canal 和 商品详情页面静态化方案Thymeleaf
第五节:用户认证、单点登录、Oauth2、购物车的实现方案、 订单结算、下单方案
第六节:本地事务与分布式事务、Cap理论/Base理论、基于Seata实现分布式事务、基于消息队列实现分布式事务--未完
第七节:微信扫码支付、推送支付通知、超时未支付订单的处理方案
第八节:秒杀业务分析、异步下单、防止恶意刷单、防止重复秒杀、接口隐藏、接口限流
阶段三:微服务架构实操【暂时搁置!】
!
- 作 者 : Yaopengfei(姚鹏飞)
- 博客地址 : http://www.cnblogs.com/yaopengfei/
- 声 明1 : 如有错误,欢迎讨论,请勿谩骂^_^。
- 声 明2 : 原创博客请在转载时保留原文链接或在文章开头加上本人博客地址,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?