InnoDB的架构设计
https://dev.mysql.com/doc/refman/8.0/en/innodb-architecture.html
由图可知,InnoDB主要分为两部分:
- InnoDB In-Memory Structures
- InnoDB On-Disk Structures
https://dev.mysql.com/doc/refman/8.0/en/innodb-architecture.html
由图可知,InnoDB主要分为两部分:
SpringMVC的处理器拦截器,类似于Servlet中的过滤器filter。
public interface HandlerInterceptor { |
类 | 作用 |
---|---|
Semaphore | 限制线程的数量 |
Exchanger | 两个线程交换数据 |
CountDownLatch | 线程等待直到计数器减为0时开始工作 |
CyclicBarrier | 作用跟CountDownLatch类似,但是可以重复使用 |
Phaser | 增强的CyclicBarrier |
可以理解为写时复制的容器,当向容器中添加元素时,不是直接往容器中添加,而是将当前容器进行copy,复制出一个新的容器,然后向新容器中添加元素,最后将原容器的引用指向新容器。
好处:在并发的场景下对容器进行”读操作”而不需要”加锁”,从而达到读写分离的目的。
从JDK 1.5 开始Java并发包里提供了两个使用CopyOnWrite机制实现的并发容器,分别是CopyOnWriteArrayList和CopyOnWriteArraySet。