标签

Java

JDK21中的虚拟线程

虚拟线程的概念、使用、注意事项、源码概览


Spring状态机

状态机的定义、选型和quick start


JDK8升级到JDK17记录

JDK升级的需求背景,以及升级过程中遇到的问题


Java中的SPI与双亲委派模型

什么是SPI,如何实现SPI,SPI是否是对双亲委派模型的破坏


Jedis的主要设计与实现

Jedis的架构设计、链接管理、集群模式支持


JDK从8升级到11时Netty报错

升级JDK,netty版本不兼容问题排查


Java8中的并行流ParallelStream

ParallelStream概要、工作原理及其使用时需要注意的问题


ORM框架对比

Java中常见的ORM框架的基本使用和特点对比


由MateSpace空间不足引发的FullGC

线上MateSpace引发的FullGC问题排查记录


Dubbo中的知识点总结

Dubbo的基础知识:线程模型、协议、序列化方式、负载均衡策略、集群容错模式等等


JDBC字符集乱码问题

线上JDBC字符集乱码问题排查记录


SpringMVC中的异常处理流程

SpringMVC中几种常见的异常处理方式及异常处理流程分析


Spring容器中的构造和销毁Bean的方法

init和destroy方法、@PostConstruct和@PreDestroy注解、InitializingBean/DisposableBean接口


SpringMVC和Servlet

SpringMVC和Servlet的关系,ServletContext,Spring容器,SpringMVC容器的区别


Java中的NIO

Java中的常见IO模型、NUO的使用


Java中的死锁检查

死锁检查:jstack、arthas


JVM常见的几种GC算法

常见的GC算法及其实现算法


Java中的invokedynamic和lambda表达式

lambda表达式和invokedynamic字节码方法的关系


时间轮定时器

时间轮定时器算法及其实现


Java中Thread相关的一些小知识

Java中Thread相关的一些小知识


Dubbo源码笔记(二)

Dubbo源码学习笔记


Dubbo源码笔记(一)

Dubbo源码学习笔记


Dubbo反序列化抛出的空指针异常问题

Dubbo线上踩坑问题排查记录


CountDownLatch、CyclicBarrier与Semaphore

Java中的信号量及其源码解析


Java线程池ThreadPoolExecutor详解

线程池ThreadPoolExecutor设计架构&源码分析


ConcurrentHashMap的高并发和线程安全

ConcurrentHashMap的数据结构和线程安全实现


HashMap中的Hash冲突解决和扩容机制

解决Hash冲突的常见实现方法,HashMap的解决冲突和扩容机制


TreeSet、HashSet、LinkedHashSet的区别

三个Set的区别和代码实现


Sharding-JDBC Lexer源码分析

Lexer的源码分析,Lexer时怎么做词法分析的


Java中几种属性copy工具比较

常见的属性copy工具及其性能对比


AQS中的独占模式

AQS的毒战模式,以及公平锁和非公平锁


AQS的基本数据结构

AQS的数据结构以及acquire和release的实现


基于自旋的CLH锁

CLH锁的Java实现


基于SnowFlake的分布式主键生成器

SnowFlake的算法分析和实现


Java中三元运算符的装箱拆箱

Java中三元运算符的装箱拆箱遇到的问题及其原因分析


Java集成Kafka简单步骤

Kafka的配置与启动,Java接入Kafka的简单demo


关于#与$的区别


类加载过程

Java类加载过程以及双亲委派模型


Spring IOC 循环依赖

什么是循环依赖以及Spring如何检测循环依赖的


String类型与运行时常量池

String类型以及运行时常量池的变迁


2019

MySQL中的EXPLAIN

EXPLAIN命令作用及其参数解释


给GitHub Pages配置域名和https

GitHub Pages配置https,以及自定义域名配置


MySQL与B-Tree和B+Tree

二叉树和平衡二叉树,B-Tree和B+Tree


个人常用的效率软件及说明

个人常用的效率软件及说明


Surge3配置vmess协议

Surge3 For Mac(v3.3.1)配置vmess协议


JDBC字符集乱码问题

线上JDBC字符集乱码问题排查记录


SpringMVC中的异常处理流程

SpringMVC中几种常见的异常处理方式及异常处理流程分析


Spring容器中的构造和销毁Bean的方法

init和destroy方法、@PostConstruct和@PreDestroy注解、InitializingBean/DisposableBean接口


SpringMVC和Servlet

SpringMVC和Servlet的关系,ServletContext,Spring容器,SpringMVC容器的区别


HTTP协议入门

HTTP协议的发展历史、各个版本的特性


Java中的NIO

Java中的常见IO模型、NUO的使用


Java中的死锁检查

死锁检查:jstack、arthas


JVM常见的几种GC算法

常见的GC算法及其实现算法


Java中的invokedynamic和lambda表达式

lambda表达式和invokedynamic字节码方法的关系


时间轮定时器

时间轮定时器算法及其实现


Java中Thread相关的一些小知识

Java中Thread相关的一些小知识


Scala入门学习笔记(二)

Scala入门学习笔记


Scala入门学习笔记(一)

Scala入门学习笔记


PySpark中遇到过的问题合集

PySpark中遇到过的问题合集


Dubbo源码笔记(二)

Dubbo源码学习笔记


Dubbo源码笔记(一)

Dubbo源码学习笔记


Dubbo反序列化抛出的空指针异常问题

Dubbo线上踩坑问题排查记录


Kafka的三种消息投递语义

Kafka的三种消息投递语义以及如何保证幂等


Kafka+Flume+HDFS的实时采集

Kafka+Flume+HDFS的实时采集,组件配置


CountDownLatch、CyclicBarrier与Semaphore

Java中的信号量及其源码解析


Java线程池ThreadPoolExecutor详解

线程池ThreadPoolExecutor设计架构&源码分析


ConcurrentHashMap的高并发和线程安全

ConcurrentHashMap的数据结构和线程安全实现


HashMap中的Hash冲突解决和扩容机制

解决Hash冲突的常见实现方法,HashMap的解决冲突和扩容机制


TreeSet、HashSet、LinkedHashSet的区别

三个Set的区别和代码实现


Hive中遇到过的问题

Hive中遇到过的问题


数据仓库中的数据分层

为什么要分层以及如何分层


Hive-QL的查询调优

HQL的EXPAIN


Hive-QL中的查询

Hive-QL中的JOIN查询、子查询以及order by、sort by、distirbute by、cluster by等


Elasticsearch中遇到的问题汇总

Elasticsearch中遇到的问题汇总


Elasticsearch中的并发控制

常见的并发控制方法:乐观/悲观并发控制,Elasticsearch中的乐观并发控制


Elasticsearch中的document

document的读写策略


Elasticsearch的基本概念和安装

Elasticsearch的特点、集群和安装


Elasticsearch中常用的API

Elasticsearch中常用的API


Flink的编程模型

Flink的编程模型和基本术语含义


构建第一个Flink应用

编写Flink程序


Hive的安装和使用

Hive的安装和使用步骤,以及Hive中的分区和桶


Hive的基本概念

Hive的基本架构、体系结构,以及和传统数据库的对比