项目实战二:设计实现一个通用的接口幂等框架(设计)

上一节课,我们介绍了幂等框架的一个重要需求场景,接口超时重试。为了避免同一业务被多次重复执行,接口需要支持幂等特性。同时,我们还对功能性需求和非功能性需求做了梳理。今天,我们来讲解幂等框架的设计思路。 ...

May 21, 2022 · 9 min

项目实战二:设计实现一个通用的接口幂等框架(实现)

上一节课,我们讲解了幂等框架的设计思路。在正常情况下,幂等框架的处理流程是比较简单的。调用方生成幂等号,传递给实现方,实现方记录幂等号或者用幂等号判重。但是,幂等框架要处理的异常情况很多,这也是设计的复杂之处和难点之处。比如,代码运行异常、业务系统宕机、幂等框架异常。 ...

May 21, 2022 · 13 min

项目实战三:设计实现一个支持自定义规则的灰度发布组件(分析)

到现在为止,我已经带你学习了接口限流框架和接口幂等框架两个实战项目。接下来,我再带你实战一个新的项目:灰度发布组件。这也是我们专栏的最后一个实战项目。还是老套路,我们把它分为分析、设计、实现三个部分、对应三节课来讲解。今天,我们对灰度发布组件进行需求分析,搞清楚这个组件应该具有哪些功能性和非功能性需求。 ...

May 21, 2022 · 10 min

项目实战三:设计实现一个支持自定义规则的灰度发布组件(设计)

上一节课,我们介绍了灰度组件的一个需求场景,将公共服务平台的RPC接口,灰度替换为新的RESTful接口,通过灰度逐步放量,支持快速回滚等手段,来规避代码质量问题带来的不确定性风险。 ...

May 21, 2022 · 9 min

项目实战三:设计实现一个支持自定义规则的灰度发布组件(实现)

上两节课,我们讲解了灰度组件的需求和设计思路。不管是之前讲过的限流、幂等框架,还是现在正在讲的灰度组件,这些框架、组件、类库的功能性需求都不复杂,相反,非功能性需求是开发的重点、难点。 ...

May 21, 2022 · 11 min
总访问量 总访客数