admin 发布的文章

Hbase + Hadoop 伪分布式环境搭建

####前言 最近公司打算使用`Hbase`来存储数据,所以需要学习一波`Hadoop`和`Hbase`,刚开始可以说是毫无头绪,不知如何下手,由于`Hbase`底层的存储我们选择的是`Had...

JAVA 并发编程 - StampedLock 实现思想

StampedLock 的内部实现是基于 CLH 锁的。CLH 锁是一种自旋锁,自旋即不断的循环,它的操作是非常占用 CPU 的,因为它会一直循环在那里看自旋锁的保持者是否释放了锁。但它能够保证...

JDK 并发编程 - 读写锁的改进:StampedLock

前面一片文章介绍过了`ReadWriteLock`读写锁的使用,虽然读写锁分离了读和写的功能,使得读与读之间可以完全并发,但是读与写之间还是冲突的。 读锁会完全阻塞写锁,它使用的依然是悲观的锁...

JDK ConcurrentSkipListMap 跳表数据结构

在 JDK 并发包中,除了常用的哈希表外,还实现了一种能够在高并发中保持有序性的数据结构:`跳表`。 之前在看《Redis设计与实现》一书时,了解到`Redis`实现中也用到了该数据结构,但是...

JAVA 并发编程 - 错误的加锁

在并发编程中,我们经常看到`synchronized`关键字的使用,没错,它的确能够使某个代码块或者方法变成线程安全同步的,但是,使用不当就会出现问题,下面是一段看似没有问题却存在线程安全的代码...