开源项目HashSmith分享-一次PR经历-SwissTable和Robin Hood的学习 技术文档
记录在reddit上看到一个UU发的贴子,发帖人bluuewhale提到了想写一个优于JDK底层的HashMap的Map,也就是本文要介绍的他所写的hash-smith: Fast & memory efficient hash tables for Java,在阅读他的这个项目的过程中,我尝试进行了Fork和PR,虽然只是一个很小的点,并且最终的因...
ZealSinger 发布于
Nacos源码学习计划-Day19-Nacos2.x-客户端gRPC发起注册请求 技术文档
对于Nacos 1.4.1版本的注册中心模块和配置中心模块,两个最重要的功能模块在单体和集群下的主要使用,我们已经学习的差不多了,经过Nacos 1.4.1版本的学习,我们还是能收获到很多的,整洁的代码风格和异步任务;内存队列;推拉结合等优秀的设计。 但是Nacos依旧在更新,其中在Nacos 2.x的版本上,进行了不少的更新包括但不局限于 Nacos集群内...
ZealSinger 发布于
Nacos源码学习计划-Day18-配置中心-集群-集群节点间如何同步配置信息 技术文档
在之前的内容中,我们知道了客户端通过NacosPropertySourceLocator在SpringCloud读取配置的拓展点上进行拓展从而读取Nacos远端配置,Nacos服务端通过ConfigService进行配置发布,ConfigWorker利用线程池进行定期的HTTP请求从而拥有感知配置更新的能力,实现配置的动态更新。
那么单点上的配置中心的比较核...
ZealSinger 发布于
HNUST-计算机图形/图像期末复习-1.9 21:40更新 期末复习
参考内容 教材 2023 hnust 湖南科技大学 大四上 计算机图形图像技术 课程 期末考试 复习资料_湖南科技大学计算机图形学-CSDN博客 理论基础题解析.pdf openGL习题.pdf openCV习题.pdf 60道复习题 历年样卷 考试题型(源自CSDN) 简述题(10分×4题,共40分) 第1章的基本内容 三维观察流水线中的基本概...
ZealSinger 发布于
Nacos源码学习计划-Day17-配置中心-配置变化推送与客户端感知配置变化 技术文档
上一章中我们讨论了Nacos客户端是如何加载和读取远程配置,通过源码了解到了Nacos远程配置的优先级和读取顺序以及读取位置在磁盘而不是数据库 在上一章最后,我们也说到了,直接修改数据库是无法被感知的,那么今天探讨的内容是:Nacos中,服务端配置变化之后,是如何通知的客户端?客户端又是如何感知到这个变化的呢? 在讲解配置中心第一个章节的时候,在源码中我们看...
ZealSinger 发布于
Nacos源码学习计划-Day16-配置中心-加载远程配置源码解析 技术文档
在上一节中,我们看到了Nacos读取配置中心内容的相关代码locate方法部分内容如下
// 加载共享配置文件loadSharedConfiguration(composite);// 加载额外配置文件loadExtConfiguration(composite);// 加载自身应用配置文件loadApplicationConfiguration(compo...
ZealSinger 发布于
Nacos源码学习计划-Day15-配置中心-Nacos客户端如何读取的远端配置 技术文档
前面的内容我们讲解了Nacos作为注册中心的相关功能,服务的注册,更新,获取,删除,集群中的同步等内容都有讲解,从现在开始,我们要开始接触Nacos的第二大功能板块——配置中心。 我们知道,我们在使用Nacos的时候,可以在Nacos的管理端处配置对应的配置,然后所有的注册在该Nacos上的服务都会使用该配置的内容,那么我们就可以思考...
ZealSinger 发布于
Nacos源码学习计划-Day14-集群-Nacos中Distro协议的具体实现 技术文档
对于Distro中的相关实现,我们就不多说了,因为在之前除了专门讲Raft那篇之外,其余的所有的内容都是基于Distro协议的进行分析,比如说集群内节点健康状态同步,集群内新实例的加入如何同步等等,在这些内容中,大伙儿应该都还记得存在很多异步任务,而且这些异步任务基本都是以Distro开头,所以这里我们大致的介绍一下就行了。 背景 Distro 协议是 Na...
ZealSinger 发布于
Nacos源码学习计划-Day13-集群-Nacos中Raft协议的具体实现 技术文档
这里我们尝试走进Nacos底层对这Raft协议的实现和使用进行进一步的学习和了解,内容很多,但是考虑到Nacos在后期版本中转而使用JRaft了,这里大家尽量看,实在看不下去了解即可。
ZealSinger 发布于
Nacos源码学习计划-Day12-集群-CAP原则和Raft协议和Distro协议理论前提 技术文档
Nacos的内核设计中,一开始的目标就是尽可能减少用户部署和运维的成本,即用户只需要一个程序包就能迅速的部署和使用Nacos单机服务和集群服务(来自阿里官方电子书《Nacos架构与原理》)。但是我们知道,Nacos本身是一个需要数据存储的一个组件,也就是说Nacos内部实现数据存储。如果是单机服务还好说,在Nacos内部内嵌关系型数据即可,但是在集群环境下,...
ZealSinger 发布于

