微服务架构
柔性可用
柔性可用目标:保证核心服务可用,非核心服务弱可用,甚至不可用。可分为系统降级、数据层降级、柔性可用设计三块。
系统降级
系统降级常常采用的方法有丢弃部分请求和关闭部分服务两种。
丢弃部分请求常用策略有丢弃老请求,丢弃非核心业务请求,随机丢弃请求三种,
| 策略 | 描述 |
| 丢弃老请求 | 丢弃老请求是把请求放在请求队列里,如果发现队列里的请求存在时间多于一个时间参数,就自动丢弃,这样既能减轻服务器压力,又能让新的请求得到处理。 |
| 丢弃非核心业务请求 | 把系统资源留给核心业务。 |
| 随机丢弃请求 | 网络会出现一会可用一会不可用。 |
关闭部分服务:可以将一些边缘业务直接关闭,缓解系统压力。
数据层降级
写 :持久到消息队列,只更新缓存,不更新数据库。
读:只读缓存。
事后再进行数据补齐:消息队列-->数据库。
打开策略
自动打开,不要人工参与

浙公网安备 33010602011771号