微服务商城系统限流模块选型
商城系统在微服务架构下整体调用关系会非常复杂,其中一个服务响应缓慢可能会造成连锁反应拖垮整个系统,或者在进行大促时一些局部热点访问量突然增加,在这些场景下就需要限流拦截一部分请求保证系统整体的正常运行。如果没有限流商城系统可能会出现整体性的无法访问,所有用户的请求都无法得到相应。限流框架从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性
早期限流降级框架大多使用 Hystrix ,Hystrix本身设计非常优秀其它的框架大多借鉴了它的设计和理念。但是 Hystrix 已经停止维护,所以我们不得不寻找替代框架,国内更多的使用阿里开源的 Sentinel 来替代 Hystrix 实现限流降级。
Sentienl 是阿里中间件团队开源,面向分布式服务架构的轻量级高可用流量控制组件,主要以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度来帮助用户保护服务的稳定性。Sentienl 的设计更加简单功能更加全面,按照资源配置相应的规则使操作更加直观。官方提供的 Sentinel 控制台可以方便的看到相关资源和流量,可以通过图形化界面方便的配置规则。Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至 500 台以下规模的集群的汇总运行情况。同时提供开箱即用的与其它开源框架/库的整合模块,例如与 Spring Cloud、Dubbo、gRPC 的整合。您只需要引入相应的依赖并进行简单的配置即可快速地接入 Sentinel。