![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spring全家桶
文章平均质量分 83
cjay_fighting
这个作者很懒,什么都没留下…
展开
-
Sentinel
根据索引获取样本窗口,如果为空则初始化,否则根据当前样本窗口的起始时间戳和已存在的样本窗口进行比较,如果相等,则说明为同一样本窗口,否则是已经过期的窗口,重置它的起始时间和计量值。需要过滤掉样本窗口数组中已过期的窗口,用当前时间戳-样本窗口起始时间,如果大于滑动窗口长度,则为过期的窗口。原创 2024-07-06 20:22:31 · 591 阅读 · 0 评论 -
SpringCloudGateway
【代码】SpringCloudGateway。原创 2024-07-06 20:21:01 · 639 阅读 · 0 评论 -
断路器CircuitBreaker
滑动时间窗口,记录的是最近n秒的指标。每个元素对应一个秒级的时间戳,移动一格代表时间+1s,当有新的请求时,移动滑动窗口的结束位置直到请求的时间戳,从总指标中删除移动过的元素的指标,重置指标,重设元素的时间戳。固定请求数滑动窗口,统计最近n个请求的指标(慢调用次数,失败次数,总次数,总调用时间)。通过一个环形数组,数组每个元素记录了最近n个请求的指标,维护最近一次调用对应的索引,每次调用时,索引值向后移动一位,将总的指标减去这个元素的指标,重置移动后对应的元素的指标,再将最新的调用指标记录在这个元素上。原创 2022-09-22 20:58:36 · 985 阅读 · 0 评论 -
OpenFeign
默认是ReflectiveFeign,最终得到的是jdk代理对象,默认的InvocationHandler实现是FeignInvocationHandler,它为方法到methodHandler的映射,将每个方法调用转发到对应的MethodHandler。QueryTemplate、HeaderTemplate和UriTemplate 组合了Template,Template用来表示包含几对大括号的字符串,根据大括号分割,大括号外部的是纯文本,内部的是变量名称,执行时会根据参数动态替换。原创 2022-09-15 12:57:44 · 725 阅读 · 0 评论 -
SpringRetry
提供给外部调用的重试执行器。原创 2022-09-14 21:48:36 · 317 阅读 · 0 评论 -
springboot自动配置类
如果为空,执行DeferredImportSelector.selectImports获取。DeferredImportSelector是延迟的,当解析到它时,先不执行它的导入方法,而是暂存起来,等到其他定义方式(@Bean,@Component,@ComponentScan)处理完在处理,使得Springboot的bean定义后于用户的bean定义加载,从而Springboot的bean上的条件注解(比如@ConditionalOnBean)能够根据用户的定义情况起作用。原创 2022-09-07 17:21:59 · 602 阅读 · 0 评论 -
springboot启动流程
WebApplicationType 根据类路径是否有Servlet和Reactive的类来确定,如果有DispatcherHandler,并且没有DispatcherServlet和org.glassfish.jersey.servlet.ServletContainer,用Reactive,创建AnnotationConfigReactiveWebServerApplicationContext;CommandLineRunner 获取到的是原生的、未解析的main方法参数,原创 2022-09-07 15:48:18 · 276 阅读 · 0 评论