服务保护策略

一、事前保护

事前保护一般就是指限流:关于限流,我的上一篇也简单介绍过,可以参考上一篇

二、事中保护

事中保护:就是流量已经触达到我们需要保护的资源,我们要用什么方式去处理这些流量

1.超时机制

调用资源的时候设置超时时间,超过可以设计重试,或者直接失败,返回失败结果。

2.壁仓模式(线程池隔离)

壁仓模式:是线程池隔离技术,发起服务请求的时候,会去对应的线程池新拿一个线程调用;跟请求线程不是同一个线程。
优点

  • 支持超时,利用的是线程池的超时
  • 支持异步请求
    缺点
  • 排队、调度、线程切换上下文开销
  • 不支持http header传递(这里当然可以通过feign的拦截器进行传递)
    feignInterceptor基于用户请求的threadLocal来传递的
    应用场景
  • 高并发、处理时间长的,释放线程比较慢;这样用线程池隔离不会影响到其他应用

3.信号量隔离

信号量隔离:基于信号量的,对每个请求设置最大请求线程数,跟其他服务还是公用一个线程池。跟请求线程是同一个线程。
优点:

  • 无线程切换开销
  • 因为不另起线程,所以可以基于同一线程的threadLocal传递httpHeader
    缺点
  • 不支持异步
  • 不支持超时(可以基于feign做超时)
    应用场景
  • 高并发、处理时间短,可以快速释放线程资源

三、事后保护

熔断降级:一般基于错误比例或者慢调用比例来做

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值