1、什么是redis? 2、redis为什么这么快? 3、redis支持哪些数据类型?每个数据类型的应用场景你知道吗? 4、redis的发布(p...
你是如何评估一个线程池需要设置多少个线程? 大致上根据应用类型来区别设置。原因是IO密集型应用,为了提高IO的并发量,可以设置多一些线程,而CP...
什么是回表查询呢? 首先需要从InnoDB的索引实现说起,InnoDB有两类索引:1、聚集索引(clustered index)2.、普通索引,...
I/O多路复用(multiplexing)的本质是通过一种机制(系统内核缓冲I/O数据),让单个进程可以监视多个文件描述符,一旦某个描述符就绪(...
volatile是java提供的一种稍弱的同步机制。这个“稍弱”体现在: 不需要加锁来保持同步,也意味着不会出现线程阻塞。 只能实现对单个对象的...
SynchronizedMap是另外一种保证线程安全的Map容器,实现方式是将线程不安全的Map容器包装成自己的属性m,对m的操作使用同步代码块...
1. 前提知识 现代计算机中,cpu的计算速度越来越快,相比之下,对存储设备、内存中的数据的读取与写入的效率却迟迟跟不上cpu的计算速度,两者之...
jdk1.6默认开启偏向锁和轻量级锁,可以通过设置参数-XX:-UseBiasedLocking来关闭偏向锁,也可以设置参数-XX:+UseHe...
较早的jdk版本中,synchronized属于重量级锁(Monitor实现),在线程争用不到锁的时候将会线程阻塞,并且下次争用锁的时候还需要从...