仓库地址:https://github.com/meeting77smile/nebula-mall
项目介绍:
- 本人在学习微服务过程中制作的电商平台的后端代码。
项目亮点:
- 服务间异步调用:利用RabbitMQ结合SpringAMQP代替OpenFeign从而实现服务间的异步调用,实现了降低服务间的耦合性、避免级联失败的效果。
- 超时订单取消:通过DelayExchange插件,利用延迟消息实现订单超时取消功能。
- 负载均衡:基于Nacos注册中心,利用DiscoveryClient和随机负载均衡算法,实现服务调用的负载均衡。
- 网关登录校验:通过自定义GlobalFilter,结合JWT工具实现一个登录校验的过滤器,提高安全性和拓展性。
- 微服务保护:利用Sentinel实现请求限流、线程隔离和服务熔断,通过Prometheus+Grafana监控平台可知系统可用性达99.9%。