Nacos

spring IOC扩展点 二次开发 

利用事件监听接口



源码总结:
    nacos是一个由spring boot web编写的消息服务中间件,暴露了一些指定接口来,通过调用我们的指定接口来完成服务的注册等功能

这里首先展示nacos主要流程

核心Controller 方法



通过请求类型来完成实例的增删改查
通过双层Map的方式存放所有注册的实例信息 其中主要使用到定时线程池启动后5秒后每隔5秒开始检测服务是否下线等等逻辑,nacos默认注册临时节点

两个方法:一个生产临时节点一个生产持久化节点

双层Map负责存储服务实例数据 部署一个Nacos可以同时支持众多环境的服务注册功能 可以用map最外层的Key来区别 

nacos为了防止服务注册时多重读写 用到了单线程,copyOnWrite思想写副本 ,修改和读数据分开 ,提高高并发性,对实时性有一些妥协,但是影响不大


优雅的双层锁代码设计 不得不说阅读nacos的源码是一种享受


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容