hashmap在1.7及之前,为了性能考虑采用头插法,如果在扩容过程中出现多线程并行运行,可能会产生循环链表。正常单线程扩容如下: 多线程并发扩容,满足特定条件会出现循环链表...
hashmap在1.7及之前,为了性能考虑采用头插法,如果在扩容过程中出现多线程并行运行,可能会产生循环链表。正常单线程扩容如下: 多线程并发扩容,满足特定条件会出现循环链表...
AOP 简介 AOP (Aspect Oriented Programming) 即 面向切面编程,听上去有点抽象和高大上,那么这玩意儿有啥用呢?和平时我们说的 OOP (面...
整体架构图 Connector(连接器) 功能需求: 监听网络端口 接受网络连接请求 读取请求网络字节流 根据具体应用层协议(HTTP/AJP)解析字节流,生成统一的Tomc...
Don't forget, a person's greatest emotional need is to feel appreciated.莫忘记,人类情感上最大的需要是...
Flink 和 Spark 都是基于内存计算、支持实时/批处理等多种计算模式的统一框架 1,技术理念不同 Spark的技术理念是使用微批来模拟流的计算,基于Micro-bat...
flink中提供的大量的算子,下面将介绍常用的算子操作方式: mapDataStream --> DataStream:输入一个参数产生一个参数,map的功能是对输入的参数进...
为了换取性能,JVM在内置锁上做了非常多的优化,膨胀式的锁分配策略就是其一。理解偏向锁、轻量级锁、重量级锁的要解决的基本问题,几种锁的分配和膨胀过程,有助于编写并优化基于锁的...
spring的启动是建筑在servlet容器之上的,所有web工程的初始位置就是web.xml,它配置了servlet的上下文(context)和监听器(Listener),...
0. EventLoopGroup Netty 的调度模块称为 EventLoopGroup,默认提供了 NioEventLoopGroup、OioEventLoopGrou...