Dubbo 长连接实现与配置

  1. 初始连接:
    引用服务|增加提供者==>获取连接===》是否获取共享连接==>创建连接客户端==》开启心跳检测状态检查定时任务===》开启连接状态检测
    源码见:com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol#getClients
  1. 心跳发送:
    在创建一个连接客户端同时也会创建一个心跳客户端,客户端默认基于60秒发送一次心跳来保持连接的存活,可通过 heartbeat 设置。
    源码见:com.alibaba.dubbo.remoting.exchange.support.header.HeaderExchangeClient#startHeatbeatTimer
  1. 断线重连:
    每创建一个客户端连接都会启动一个定时任务每两秒中检测一次当前连接状态,如果断线则自动重连。
    源码见:com.alibaba.dubbo.remoting.transport.AbstractClient#initConnectStatusCheckCommand
  1. 连接销毁:
    基于注册中心通知,服务端断开后销毁
    源码见:com.alibaba.dubbo.remoting.transport.AbstractClient#close()
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。