8-Dubbo启动器DubboBootstrap借助双重校验锁的单例模式进行对象的初始化
Dubbo3 往云原生的方向走自然要针对云原生应用的应用启动,应用运行,应用发布等信息做一些建模,这个DubboBootstrap就是用来启动Dubbo服务的.类似于Netty的Bootstrap类型和ServerBootstrap启动器
Dubbo的bootstrap类为啥要用单例模式:
下面就来直接看代码吧,代码胜千言:
对象的调用代码如下:
DubboBootstrap获取对象的getInstance()方法:
computeIfAbsent() 方法对 hashMap 中指定 key 的值进行重新计算,如果不存在这个 key,则添加到 hashMap 中。
instanceMap设计为Map<ApplicationModel, DubboBootstrap>类型 Key,意味着可以为多个应用程序模型创建不同的启动器,启动多个服务
技术咨询与支持,可以扫描微信公众号进行回复咨询