上一页 1 2 3 4 5 6 ··· 8 下一页
摘要: dubbo中自己实现了不同于java的SPI插件化机制,使得Dubbo可以在对多个指定的目录中加载扩展实现,同时与Java SPI不同的是可以实现按需加载。 Dubbo的扩展SPI有如下特点:1. 单例,对于某个类型扩展,只会有一个ExtensionLoader;2. 延迟加载,可以一次只获取想要的 阅读全文
posted @ 2021-12-14 14:38 gaojy 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 本章节将会介绍dubbo 2.7.1的项目工程结构,以及一个简单的helloworld来运行,让读者对dubbo有一个更加直观的了解。 项目结构: dubbo-common 公共逻辑子项目,定义了各子项目中 通用的 组件 和 工具类,如:IO、日志、配置处理等。 dubbo-rpc 分布式协调服务框 阅读全文
posted @ 2021-11-16 23:54 gaojy 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 在sentinel中日志的处理都是通过RecordLog来进行,那么sentinel是如何日志实现呢? 如果业务代码中引入了sentinel-logging的话,那么会具体依赖logback等。如果没有,则使用java自带的日志框架JUL实现。对JUL的了解可以查看文章。 static { try 阅读全文
posted @ 2021-10-12 21:07 gaojy 阅读(613) 评论(0) 推荐(0) 编辑
摘要: sentinel-initFunc Sentinel提供了一套完整的流控配置UI界面,用于配置流控的各个参数,阈值。其实现的大体逻辑是引入一个web服务,这个web服务可以接收界面上的请求参数,来初始化阈值,流控规则等。并且与控制台服务sentinel-dashboard保持心跳。 那么这个web服 阅读全文
posted @ 2021-09-25 23:18 gaojy 阅读(465) 评论(0) 推荐(0) 编辑
摘要: FlowSlot流控规则 这里面主要是根据qps或者线程数配置,来做限流。 private static boolean passLocalCheck(FlowRule rule, Context context, DefaultNode node, int acquireCount, boolea 阅读全文
posted @ 2021-09-20 01:07 gaojy 阅读(75) 评论(0) 推荐(0) 编辑
摘要: AuthoritySlot 这个slot相对简单,看一下配置 实际上就是校验资源的来源白名单,允许或者不允许该资源被配置的来源访问。这里不过多的阐述。 SystemSlot 先说下LOAD和CPU使用率,这是使用了JVM自带的Mbean来处理 public void run() { try { Op 阅读全文
posted @ 2021-09-19 14:52 gaojy 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 概述 DegradeSlot是用于服务降级熔断。 在执行entry的过程中,对于处于熔断open状态的情况则判断是否已经过了熔断期且设置半开成功,那么就通过.否则不通过报DegradeException 对于处于降级状态即half-open的时候,则直接抛出DegradeException. 熔断器 阅读全文
posted @ 2021-09-16 23:29 gaojy 阅读(172) 评论(0) 推荐(0) 编辑
摘要: ClusterBuilderSlot源码解析 ClusterBuilderSlot里面有这么几个重要的属性 // static 有点意思 实际上全局的一个资源对应一个ClusterNode private static volatile Map<ResourceWrapper, ClusterNod 阅读全文
posted @ 2021-09-15 22:49 gaojy 阅读(85) 评论(0) 推荐(0) 编辑
摘要: NodeSelectorSlot解析 在理解这一章前,可以先阅读sentinel整体架构可能了解起来更有帮助。 在NodeSelectorSlot中维护这变量 private volatile Map<String, DefaultNode> map = new HashMap<String, De 阅读全文
posted @ 2021-09-15 22:18 gaojy 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 总体架构 上图是来自官网的总体架构图,这张图上可以清晰的看到整个流量控制以责任链的模式进行的,每一个slot负责特定的处理,后续会给大家具体讲解chain上每一个slot的功能。 NodeSelectorSlot 负责收集资源的路径,并将这些资源的调用路径,以树状结构存储起来,用于根据调用路径来限流 阅读全文
posted @ 2021-09-15 21:51 gaojy 阅读(1009) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 8 下一页