Java NIO - 操作系统的四种 IO 模型以及 netty 的底层原理 kinglyjn 2021-09-18 内核态进程和用户态进程怎么理解内核和用户操作系统为了自保,防止普通进程直接影响整个系统,建立了一套严格的等级机制。它就像一个等级森严的堡垒,所有的划分都是为了防止 “平民” 误伤 “国王”。为了充分理解内核和用户,我们从以下三个角度来剖析这个内核-用户的机制。
数据结构之红黑树 kinglyjn 2021-05-03 理解红黑树的原理简单的类比 想象你在盖一座形状奇特的摩天大楼。为了保证大楼不倒,建筑局(红黑树协议)做了下面的规定: 黑色节点 = 承重钢梁:黑色节点是整座大楼的硬骨架。无论你走哪条楼梯,从顶楼到地面的黑色承重梁数量必须完全一样。 红色节点 = 柔性连接件:红色节点是挂在承重钢架上的连接支架,两个红色支架决不能直接连在一起。因为红红不能相连,大楼最坏的情况也只是 “黑-红-黑-红”,这就保证了最长的那条路(红黑相间)顶多是短的那条路(全黑)的两倍。
数据结构之AVL自平衡二叉树 kinglyjn 2021-03-20 AVL的起源AVL 并不是一个缩写词,而是取自它的两位前苏联发明者:G.M. Adelson-Velsky 和 E.M. Landis。他们在 1962 年的论文中首次提出了这种结构。这是历史上第一种自平衡二叉搜索树。在那个内存以 KB 计算的年代,如何高效利用存储空间和计算周期是生死攸关的大事。
RESTful 简介以及基于 SSM 的完整案例 kinglyjn 2021-02-01 什么是 RESTful对于 RESTful(Representational State Transfer 表征状态转移),很多教科书把它讲得很玄乎。但其实我们可以把 RESTful 看作是 Web 开发中的一套 “行为准则” 或 “普通话标准”。它的本质就是:用最标准的 HTTP 动作,去操作服务器上的 “资源”。
数据结构之队列 kinglyjn 2021-01-16 什么是队列队列(Queue)是一种受限的线性表。它的核心规则是 FIFO (First In First Out),即先进先出。 它就像一个单向隧道或排队买票。最早进去的人,必须最早出来;后来的人只能乖乖站在队尾。 它只允许在表的队尾进行插入操作,而在队头进行删除操作。