加载中
Redis数据库底层实现原理

(一)基本数据结构 1)redisServer Redis服务器使用redisServer结构保存服务器的状态,其中,dbnum表示服务器的数据库数量,一个redisDb类型的数组保存所有的数据库。 struct redisServer {...

Redis的底层数据结构

(一)简单动态字符串 (二)链表 (三)字典 (四)跳跃表 (五)整数集合 (六)压缩列表 (七)

前天 18:05
8
SQL语句的执行过程

(一)架构组件 (二)执行流程

12/09 18:21
8
Mybatis源码分析

(二)SqlSessionFactoryBuilder类 1)内部方法 根据入参的不同SqlSessionFactoryBuilder内部提供了六个方法用于构造SqlSessionFactory。 public class SqlSessionFactoryBuilder { public S...

12/03 18:24
6
Semaphore

public class Semaphore implements java.io.Serializable { private static final long serialVersionUID = -3222578661600680210L; /** All mechanics via AbstractQueuedSynchronizer sub...

12/01 15:05
7
IO模型简介

(一)IO的过程 在linux 操作系统系统中几乎所有IO操作都是以“文件”的形式管理的(一切皆文件),对“文件”的读写一般都要经过内核态和用户态的切换,对于一次IO访问(以read为例),会经历...

FutureTask

FutureTask (一)Future接口 public interface Future<V> { /** * 取消任务的执行,如果该任务由于已经完成,或是已经被取消,或者是其他原因导致无法被取消,则失败。 * 若取消成功,如果....

11/11 18:02
8
线程池

(一)Executor public interface Executor { /** * 在未来的某一时刻执行command,通过一个新的线程,线程池,或是调用线程本身 */ void execute(Runnable command); } (二)Executo......

11/04 19:27
23
ThreadLocal

(一)ThreadLocalMap ThreadLocalMap是定义在ThreadLocal中的静态类 static class ThreadLocalMap { //key一定是ThreadLocal类型的对象,如果key为空,则该Entry被视为不新鲜的Entry,不再....

10/11 18:12
39
Hadoop架构设计与实现原理

(一)Hadoop发展史 Hadoop最早起源于Nutch。Nutch是一个开源的网络搜索引擎,由Doug Cutting于2002年创建。Nuthc的设计目标是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能,...

单例模式

有些对象我们只需要一个,比如线程池、缓存、对话框、处理偏好设置和注册表的对象、日志对象、充当打印机、显卡等设备的驱动程序的对象。这类对象只能有一个实例,否则可能会导致程序的行为异...

09/15 10:51
11
高并发的解决方案

(一)集群与分布式 集群和分布式都是使用多台服务器进行处理的。集群中的每台服务器具有相同的功能,处理请求时调用哪台服务器都可以,主要起分流的作用。而分布式是将不同的业务放到不同的...

09/09 09:53
12
海量数据解决方案

(一)分离活跃数据 有些数据总数据量很大,但是活跃数据并不多。比如用户,注册用户很多,但是活跃用户数很少。这时可以将活跃数据与不活跃数据分离。活跃数据单独存放在活跃表中,并通过离...

缓存原理

(一)缓存的意义 缓存最早是为了解决CPU运算速度和内存读写速度不匹配的矛盾。如今我们把能协调两种数据传输速度/处理速度有差异的组件的结构都称之为缓存。除了CPU和内存以外,内存和硬盘之...

08/25 19:45
6
LeetCode

1)反转一个单链表: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 方法一:迭代 复杂度分析 时间复杂度:O(n)O(n) 。 假设 nn 是列表的长度,时间复杂度是 O(n)O(n)。 空间复杂度:...

n2n
08/06 23:20
19
BeanFactory定位器的使用:BeanFactoryLocator

(一)BeanFactoryLocator接口 //BeanFactory的定位器,用来查找、使用或释放一个BeanFactory public interface BeanFactoryLocator { //根据参数factoryKey封装一个BeanFactoryReference,f...

08/06 19:49
41
通过ContextLoaderListener加载Spring容器的根上下文以及根上下文的作用

(一)背景知识 Web容器中有一个全局上下文,即ServletContext,为Spring容器提供宿主环境。ServletContext中保存的属性(attribute)和参数(parameter)属于整个应用,被所有servlet所共享。S...

06/23 17:41
10
CountDownLatch

(一)CountDownLatch数据结构 和ReentrantLock类似,CountDownLatch内部也定义了一个继承于AbstractQueuedSynchronizer的类Sync,并拥有一个Sync类型的成员变量。其定义的Sync的成员state在...

05/25 17:04
1
CyclicBarrier

(一)CyclicBarrier的数据结构 public class CyclicBarrier { //每当所有线程执行完dowait方法,就完成了一代,即generation,broken表示该代是否被异常/超时/中断等行为破坏过 private stat...

05/25 17:04
6
ReentrantLock源码分析

阅读本文前,建议先了解一下AbstractQueuedSynchronizer的基本相关知识:https://my.oschina.net/u/3498791/blog/3047553 (一)ReentrantLock数据结构 ReentrantLock类中定义了一个继承于A...

CAS
05/25 17:03
3

没有更多内容

加载失败,请刷新页面

返回顶部
顶部