dubbo
YAOQINGGG
在技术中寻找快乐
展开
-
dubbo服务启动过程
public class Main { public static final String CONTAINER_KEY = "dubbo.container"; public static final String SHUTDOWN_HOOK_KEY = "dubbo.shutdown.hook"; private static final Logger l...原创 2018-10-27 15:50:42 · 265 阅读 · 0 评论 -
dubbo-代理类的生成过程
首先看proxyFactory的生成过程 private static final ProxyFactory proxyFactory = ExtensionLoader.getExtensionLoader(ProxyFactory.class).getAdaptiveExtension();ExtensionLoader初始化类 @SuppressWarnings("u...原创 2018-10-27 23:13:07 · 1234 阅读 · 1 评论 -
dubbo服务端客户端长连接心跳
当客户端从注册中心拿到服务端的ip地址之后,客户端与服务端之间建立连接,那这条建立的连接如何去校验状态呢。原创 2019-06-12 23:00:30 · 1239 阅读 · 0 评论 -
dubbo线程模型
一下都是讲的基于netty的通讯模式先说客户端找到NettyClient类doOpen方法 @Override protected void doOpen() throws Throwable { NettyHelper.setNettyLoggerFactory(); bootstrap = new ClientBootstrap(channe...原创 2019-06-09 14:46:33 · 616 阅读 · 0 评论 -
dubbo客户端调用失败
当我们使用dubbo的时候,如果客户端调用服务端失败,客户端应该如何处理呢客户端默认的如下,失败转移1.失败转移,当出现失败,重试其它服务器,通常用于读操作,但重试会带来更长延迟。public class FailoverClusterInvoker<T> extends AbstractClusterInvoker<T> { private static...原创 2019-06-09 18:20:45 · 7860 阅读 · 0 评论 -
dubbo负载均衡策略
客户端调用服务端时,如何选择调用服务端的哪台机器上的服务呢。这就设计到负载均衡策略了。默认使用的是RoundRobinLoadBalance,轮训策略,或者说是加权轮训策略除此之外,还有随机策略,加权随机策略最不活跃策略以及一致性hash策略还有在DubboInvoker里面我们可以看到,我们与服务端的某台机器建立的是多个连接(默认是两个),那么需要从连接里面选一个出来。 @O...原创 2019-06-09 18:35:09 · 463 阅读 · 0 评论 -
dubbo服务端限流
在服务端调用链条里,会有一个TpsLimitFilter类,用来对服务端限流public boolean isAllowable(URL url, Invocation invocation) { int rate = url.getParameter(Constants.TPS_LIMIT_RATE_KEY, -1); long interval = url.g...原创 2019-06-12 10:04:45 · 503 阅读 · 0 评论