本篇文章主要介绍重试机制实现的核心以及原理图;
我们以发送数据的场景,来介绍重试机制。
1、grpc框架中的重试机制的核心或者说实现主体思路? |
假设客户端向服务器端发起服务请求,整个过程会经历很多阶段,并不是所有的阶段都能重试,只有某些阶段可以进行重试;
当某个操作执行成功后,将该操作缓存到一个切片里,假设已经将2个阶段的操作缓存到了切片里;
执行第3个操作时,假设执行失败;
那么此时,首先判断是否允许重试:
若允许重试的话,重新依次执行切片里的函数,最后在重试一下第3个操作即可;
2、grpc框架重试机制的最大特色: |
就是具体业务跟重试机制流程分离
重试机制可以缓存执行的操作,方便对前面的操作进行重试