上一页 1 2 3 4 5 6 ··· 8 下一页
摘要: Java虚拟机在执行Java程序的过程中会把它所管理的内存划分成为若干个不同的数据区域。 程序计数器(Program Counter Register) 每一个线程都有一个程序计数器,各线程之间互不影响,独立存储,属于线程的私有内存。如果线程正在执行一个Java方法,这个计数器记录的是正在执行的虚拟 阅读全文
posted @ 2020-07-14 07:53 PinXiong 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 在Java虚拟机中,如果reference类型的数据中存储的数值代表的是另外一块内存的起始地址,就称这块内存代表着一个引用。一共有4类引用: 强引用(Strong Reference) 类似Object obj = new Object()这类的引用,只要强引用还存在,垃圾收集器永远不会回收掉被引用 阅读全文
posted @ 2020-07-14 07:53 PinXiong 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 最近一直在研究AQS的源码,希望可以更深刻的理解AQS的实现原理。虽然网上有很多关于AQS的源码分析,但是看完以后感觉还是一知半解。于是,我将自己的整个理解过程记录下来了,希望对大家有所帮助。 基本原理 AQS是Java中锁的基础,主要由两个队列组成。一个队列是同步队列,另一个是条件队列。 同步队列 阅读全文
posted @ 2020-07-13 01:05 PinXiong 阅读(1220) 评论(0) 推荐(0) 编辑
摘要: 同步和异步,阻塞和非阻塞是大家经常会听到的概念,但是它们是从不同维度来描述一件事情,常常很容易混为一谈。 ##1. 同步和异步 同步和异步描述的是消息通信的机制。 ###同步 当一个request发送出去以后,会得到一个response,这整个过程就是一个同步调用的过程。哪怕response为空,或 阅读全文
posted @ 2020-07-12 16:29 PinXiong 阅读(2643) 评论(0) 推荐(0) 编辑
摘要: Redis的发布和订阅功能分为频道订阅和模式订阅两种。每当有其他客户端向被订阅的频道发送消息时,频道的所有订阅者都会收到这条消息。 ##频道订阅 当一个客户端执行SUBSCRIBE命令订阅某个或某些频道时,这个客户端与被订阅频道之间就建立起了一种订阅关系。 #####订阅 每当客户端执行SUBSCR 阅读全文
posted @ 2020-07-12 13:47 PinXiong 阅读(301) 评论(0) 推荐(0) 编辑
摘要: Redis通过MULTI、EXEC、WATCH、DISCARD等命令来实现事务功能。主要有以下三个阶段: ##事务开始 MULTI命令的执行,标识着一个事务的开始。MULTI命令会将客户端状态的flags属性中打开REDIS_MULTI标识来完成的。 ##命令入队 当一个客户端切换到事务状态之后,服 阅读全文
posted @ 2020-07-12 13:42 PinXiong 阅读(2033) 评论(0) 推荐(0) 编辑
摘要: 常见的IO事件处理模型有两种:Reactor和Proactor。Redis中的ae就是采用的Reactor事件处理模型,Proactor需要操作系统的支持,目前暂时还没接触到相关的使用场景,主要是学习模型结构。 ###Reactor模型 Handler:用来标识一个文件描述符 Synchronous 阅读全文
posted @ 2020-07-12 13:40 PinXiong 阅读(1537) 评论(0) 推荐(0) 编辑
摘要: 在深入理解select、poll和epoll之间的区别之前,首先要了解什么是IO多路复用模型。 ###IO多路复用 简单来说,IO多路复用是指内核一旦发现进程指定的一个或者多个IO条件准备就绪,它就通知该进程去进行IO操作。 详细的描述可以参考IO模型。select、poll和epoll都是提供I/ 阅读全文
posted @ 2020-07-12 13:38 PinXiong 阅读(1214) 评论(0) 推荐(0) 编辑
摘要: ##什么是IO 在Linux世界里,一切皆文件。文件就是一串二进制流,不管是socket、FIFO、管道还是终端,对我们来说一切都是文件,一切都是流。在信息交换的过程中,我们都是对这些流进行数据的收发操作,简称为I/O操作(Input and Output)。 计算机里的所有流都是通过文件描述符(F 阅读全文
posted @ 2020-07-12 13:37 PinXiong 阅读(321) 评论(0) 推荐(0) 编辑
摘要: Redis集群是Redis提供的分布式数据库方案,集群通过分片(Sharding)来进行数据共享,并提供复制和故障转移功能。 ##节点 一个节点就是一个运行在集群模式下的Redis服务器,Redis服务器在启动的时候会根据cluster-enabled配置项来决定是否开启服务器的集群模式。 节点当前 阅读全文
posted @ 2020-07-12 13:28 PinXiong 阅读(436) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 8 下一页