小破站,记录和学习
06
19
BIO与NIO的一点理解 BIO与NIO的一点理解
BIO即阻塞IO,NIO是非阻塞IO。NIO 库是在 JDK 1.4 中引入的。NIO 弥补了原来的 BIO 的不足,它在标准 Java 代码中提供了高速的、面向块的 I/O。NIO被称为 no-blocking io 或者 new io都
2022-06-19
12
Redis的数据结构 Redis的数据结构
在看Redis的一些底层数据结构实现时,想到一个以前没有关注过的问题,就是Redis是如何把数据分配到集群中的每一个节点的。我们知道Redis用Cluster模式部署下,数据是分布式存储的,假设客户端随机请求到集群中的一台Redis服务,而
2022-06-12
06
红黑树的翻转 红黑树的翻转
红黑树(R-B Tree),它是二叉树中,最经典也是最复杂的数据结构。也是一种常见的自平衡二分搜索树。说到自平衡就涉及到旋转,这是红黑树最难的地方之一。我在一开始接触时也是云里雾里,不知道为什么红黑树相比普通的二叉树要设置这么多条件,更别说
2022-06-06
05
select与epoll select与epoll
select与epoll是操作系统提供的两种I/O多路复用的机制,I/O多路复用就是通过一种机制,一个进程可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。select是比较早出现的技术,但是
2022-06-05
05
Java的反射与动态编译 Java的反射与动态编译
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制。这种技术在一些开源框架中使用非常广泛,
2022-06-05
02
对于类加载的一点理解 对于类加载的一点理解
当我们写好一个Java程序之后,不是管是CS还是BS应用,都是由若干个.class文件组织而成的一个完整的Java应用程序,当程序在运行时,即会调用该程序的一个入口函数来调用系统的相关功能,而这些功能都被封装在不同的class文件当中,所以
2022-06-02
05
31
LeetCode-最长公共子序列 LeetCode-最长公共子序列
力扣上一道中等题,求两个字符串的最长公共子序列。说实话这道题我完全没有思路,一开始尝试用双指针去遍历两个数组,但是公共子序列可以是不连续的,这样情况就会变得很复杂。在和力扣度过美好的一天后,我最终放弃了。看完题解后,茅塞顿开。故此记录一下思
2022-05-31
26
存储引擎的MVCC机制 存储引擎的MVCC机制
MVCC全称Multi-Version Concurrency Control,即多版本并发控制,主要是为了提高数据库的并发性能。对存储引擎的MVCC机制,早有涉猎学习。但如果在工作中生活中没有足够的经历,其实很难对它有深入的理解。为什么要
2022-05-26
15
Mysql存储引擎总结 Mysql存储引擎总结
SQL的全称是Structured Query Language,翻译成中国话就是结构化查询语言。这是一种声明式的语法,和其它数据库相比,MySQL 有点与众不同,它的架构可以在多种不同场景中应用并发挥良好作用。主要体现在存储引擎的架构上,
2022-05-15
04
图灵机与冯诺依曼模型 图灵机与冯诺依曼模型
图灵机是─种抽象的机器,一种抽象的计算模型。由数学家阿兰·图灵提出来的,尽管这个机器很简单,但它可以模拟计算机的任何算法,无论这个算法有多复杂。 当今的计算机都是图灵机的实现,要想知道程序执行的原理,我们可以先从「图灵机」的工作原理说起,图
2022-05-04
3 / 20