外观
工作日常
外呼系统慢查询排查:两条 SQL 摸清数据库大表
SSH 代理从入门到起飞:一篇让你彻底搞懂端口转发的文章
PostgreSQL 的下载、安装与使用
fastjson反序列化漏洞实战攻防演练
fastjson-safe-mode-安全加固说明
自定义Skill
MyBatis批量插入INSERT_IGNORE踩坑记录
MacOS 重启后 OpenVPN 连接失败问题排查
信贷项目实际案例
基础理论
操作系统
网络编程
Java 网络编程原理 - 应用程序是如何建立 TCP 连接并响应网络请求的?
Java 网络编程原理 - 如何实现一个简单的 Tomcat Web 容器?
Java 网络编程原理 - 从输入域名到后端交互的全流程解析
软件工程
interview
面试记录 - 怎样在面试中讲清楚分库分表?
面试记录 - 京东美团的面试复盘
面试记录 - MVCC 并发事务结合 JVM 并发标记的思考
面试技巧 - 高频灵魂问题应答库
面试技巧 - 面试前对自己的复盘
面试技巧 - 自身技术体系的梳理
面试技巧 - 如何写好简历
面试技巧 - 如何优雅的去谈薪
面试与未来规划 - 随手记
面试“求生”指南 - 八股文干货手册
你遇到过哪些故障或者事故
中间件系列
MySQL数据库
数据库- Mysql 索引原理与高性能调优
数据库 - 深度探索 Mysql 的 binlog、redo log、undo log
数据库 - 深入了解 Mysql 事务与并发控制
数据库 - 如何获取分组中同类型数据最新的一条
数据库 - Mysql 高性能架构的读写分离
数据库 - Mysql 的全量与增量同步(作废,请查看平滑迁移一文)
数据库 - Mysql 可重复读如何解决幻读?
数据库 - Mysql 全面解析与应用实战
数据库 - 千万数据如何做平滑的数据迁移_
RocketMQ消息队列
RocketMQ 源码环境的构建
RocketMQ 功能特性讲解
分库分表
分库分表 - 用一致性哈希优雅应对数据分布与扩容
分库分表 - 数据库架构演变与分库分表的诞生
分库分表 - ShardingSphere 入门指南与分片实战
基因法分片实战
InfluxDB时序库
时序数据库 - 手把手实现 InfluxDB 环境搭建与安装配置
时序数据库 - 基于 InfluxDB 物联网监控系统实战
时序数据库 - InfluxDB 聚合函数与数据分析
时序数据库 - InfluxDB 性能监控实战指标收集
时序数据库 - InfluxDB 入门指南与企业级实战
时序数据库 - InfluxDB Line Protocol 数据写入详解
时序数据库 - InfluxDB InfluxQL 查询语言详解
时序数据库 - InfluxDB Web UI 实操大全
Elasticsearch搜索引擎
玩转Elasticsearch Query DSL(二):全文搜索与高亮显示
玩转Elasticsearch Query DSL(三):数据洞察利器 - 聚合分析
玩转 Elasticsearch Query DSL(一):基础查询与复合查询
Elasticsearch 读写性能调优指南:从配置到查询的Best Practice
Elasticsearch 环境搭建与 IK 分词器的集成
Elasticsearch 深度分页性能陷阱与解决方案:From_Size, Search After & Scroll API
Elasticsearch 入门:从零开始理解分布式搜索引擎
Elasticsearch 与 Spring Boot 的完美融合:Spring Data Elasticsearch 详解
Redis缓存
Redis - 高级数据类型与自带的解决方案
Redis - 面试中常见的缓存问题与方案
Redis - 过期策略与内存淘汰策略
Redis - 版本说明与安装、配置详解
Redis - 基础数据类型与底层结构的实现
Redis - 主从同步、Sentinel与Cluster
Redis - IO模型、通信协议、持久化、管道与事务
任务调度
XXL-JOB 任务调度执行机制的深度解析
IM
IM - 搭建高性能集群与水平扩容
IM - 百万级 WebSocket 连接模拟与瓶颈定位
IM - 智能坐席路由网关
IM - 多轮对话状态机设计
IM - 亿级群聊消息存储设计
IM - 敏感词过滤de性能极限
IM - 网络协议与数据传输格式抉择
性能优化
线上性能问题 - 连接池耗尽的排查思路
线上性能问题 - 内存泄漏的最佳排查思路
线上性能问题 - CPU 飙升100%+
性能分析 - 诊断工具 Arthas
性能分析 - 动态追踪技术底层分析
性能分析 - JMH 微基准测试
性能分析 - JMeter 压测
性能优化 - 日常开发中的优化项
性能优化 - 日常 DB 操作优化项
性能优化 - 全面了解限流的方式
性能优化 - JVM 命令行工具全解析与实战指南
集成全局日志进行【高性能】的操作日志留痕
线上性能问题 - 玩转 MAT 分析内存泄漏
性能优化 - 保证缓存与DB数据的双写一致性
开发实践
设计模式 - 责任链模式
系统重构对架构上的一些优化思路
支撑百万级并发:从 RT、QPS 到全链路压测的指标拆解与落地
基于 Spring 声明式事务下锁失效的场景分析
基于 Spring MVC 参数解析器实现数据权限隔离
_你真的会应对消息队列中的消息堆积吗?
三方接口 - 调用三方中的一些反向思考
三方接口 - 如何保证自己的接口安全
Vue 全家桶 - 基础命令
SpringBoot 整合 Knife4J 文档动态 host 与 basePath 处理
SpringBoot 全局处理 LocalDateTime 的序列化与反序列化格式
Spring 多重事务嵌套产生的异常
网络编程 - 跟着动画来学习TCP三次握手和四次挥手
支撑百万级并发:纵观微服务的全链路实战设计
工具箱
日志快速查询的命令与技巧
Mac_Win IntelliJ IDEA 2024.3.2.2 破解
Mac_Win DataGrip 2024.3.3 破解
Mac IntelliJ IDEA 2023.3破解激活
Java实现阿里云短信云服务
Java 工具包 - 微信开发 SDK WxJava
Java 工具包 - 多平台文件存储神器 X-File-Storage
Java 工具包 - 一站式 PDF 解决方案 x-easypdf (1)
Java 工具包 - ClassFinal 代码安全加密,从此拒绝反编译
Java 工具包 - 开源界最好用的行为验证码工具 tianai-captcha
IntelliJ IDEA 的初始化配置
IntelliJ IDEA 下载安装与破解
Guava - Map增强工具类
Java 工具包 - 轻量级的分布式日志 TLog
微服务分布式
分布式事务
构建自己的分布式事务底层实现的思维模型
最大努力通知型分布式事务原理与实战
可靠消息投递分布式事务原理与实战
XA 强一致性分布式事务原理与实战
TCC 最终一致性分布式事务原理与实战
Nacos服务治理
Nacos 高频面试题精讲
配置中心工程化应用
配置中心动态刷新源码分析
注册中心工程化应用
服务注册源码分析
服务发布订阅源码分析
心跳机制源码分析
并发与JVM
并发编程
并发编程 - 高效并发核心模型
并发编程 - 高性能队列 Disruptor
并发编程 - 线程基础与线程安全
并发编程 - 深入解析 ConcurrentHashMap
并发编程 - 深入理解 synchronized
并发编程 - 深入理解 Atomic 原子类
并发编程 - 深入了解 AbstractQueuedSynchronizer
并发编程 - 并发容器全解析
并发编程 - ThreadPoolExecutor 源码与实战
并发编程 - ThreadLocal 详解与源码分析
并发编程 - ReentrantReadWriteLock 源码解读
并发编程 - ReentrantLock 源码解读
并发编程 - JUC 工具类的实现原理
并发编程 - Java 内存模型与 volatile
并发编程 - FutureTask 应用&源码分析
并发编程 - ForkJoinPool 深度源码解析
并发编程 - CopyOnWriteArrayList 源码分析
并发编程 - CompletableFuture 任务编排与源码解读
JUC 基础知识总结
JVM调优
构建 JVM 学习的知识体系
告别“祖传”配置:深入理解 JDK 8→17 的 JVM 参数与 GC 调优新思路
分享我的 JVM 调优思路
JVM 高效并发核心知识
ZGC
Java 进化论:解码 JDK 11、17、21 与 25 的核心变革
并发与虚拟机
运维部署
运维部署 - 快速模拟线上环境进行开发
运维部署 - 基于 Jenkins + Docker 一键打包部署 SpringBoot 项目
运维部署 - Linux 下 Mysql 的安装教程
运维工具 - 数据库设计工具 DrawDB
运维工具 - 分布式任务调度平台 XXL-job
运维工具 - 一站式服务器运维解决方案 Orion Visor
职场思考
腾讯云架构师城市沙龙 - 「AI 时代下的架构设计」
职业规划 - 自身技术栈的深度复盘与前瞻性规划
工作经验分享 - 项目技术方案模板
工作生涯的百宝箱
你是否具备了高级开发工程师的完整画像?
一个高级牛马 2025 ~ 2026 的求职赎身记 (1)
给年轻程序员的十句真心话:从代码到人生规划
偷偷告诉你,完整的项目架构是如何从 0 - 1 的
面向企业的学习路线
随笔
我的图书室
我的博客
电商业务
电商业务 - 订单超时取消
电商业务 - 订单
电商业务 - 秒杀
电商业务 - 支付
插件设计
给项目中添加一道保险 - “探针”
插件设计 - 基于 Nacos 配置实现动态 Bean 的注入
插件设计 - 全链路日志 TraceId 穿透异步线程与MQ消息
静态变量实现 Nacos 配置热更新的巧妙方案
插件设计 - 结合 Spring Cloud Nacos 实现动态灰度发布
源码艺术
Spring核心
Spring 源码分析之 Bean 的全生命周期
Spring IOC_AOP_MVC 全家桶源码全流程图 (1)
MyBatis持久化
第5篇-插件机制与责任链
第4篇-SQL执行的全链路(StatementHandler)
第3篇-事务管理——SpringManagedTransaction的秘密
第2篇-Executor执行器的三种形态
第1篇-从Mapper接口到SQL执行的奇幻漂流
AOP与事务
Spring 事务全链路解析(一):@Transactional 注解的_前世今生_
第7篇-提交、回滚与异常规则
第6篇-事务资源的绑定与传递
第5篇-事务管理器的设计哲学
第3篇-事务传播机制源码深度解析
第4篇-事务隔离级别的实现原理
第2篇-AOP代理——事务的'隐身衣'
第1篇-@Transactional注解的'前世今生'
Spring 事务全链路解析(四):事务隔离级别与传播机制的实现原理
Spring 事务全链路解析(六):DataSourceTransactionManager 与数据源的绑定
Spring 事务全链路解析(五):AbstractPlatformTransactionManager 的事务生命周期
Spring 事务全链路解析(二):深入探索 Spring 事务代理机制
Spring 事务全链路解析(三):TransactionInterceptor 如何开启一个事务
Spring 事务全链路解析(七):TransactionSynchronizationManager 资源管理的绑定与传递
spring aop 事务 、数据源连接池、mybatis、jdbc、mysql驱动 你真的了解吗
连接池
第6篇-连接的生命周期与事务边界
第5篇-MySQL驱动的JDBC实现
第4篇-Druid过滤链与监控统计
第3篇-连接的借与还(getConnection全流程)
第2篇-Druid连接池的整体架构
第1篇-JDBC规范与DriverManager的legacy
系列四-总结系列
第4篇-那些年我们踩过的事务坑
第3篇-基于源码的调优实践
第2篇-异常全景图
第1篇-从Transactional到MySQL返回的完整旅程
SpringBoot
SpringBoot - 自动装配原理的满分解读
SpringBoot - 源码环境准备
系列底稿
series4
part4-knowledge-summary
part3-performance-tuning
part2-exception-analysis
part1-framework-collaboration
series3
part4-mybatis-full-chain-summary
part3-simple-executor-sql-execution
part2-sqlsession-executor
part1-mybatis-autoconfigure
series2
part5-connection-validation-tuning
part4-druid-filter-chain
part3-connection-lifecycle
part2-druid-architecture
part1-datasource-interface
series1
part5-transaction-synchronization-manager
part4-datasource-transaction-manager
part3-abstract-platform-transaction-manager
part2-transaction-interceptor
part1-transactional-proxy-mechanism
Spring Cloud Alibaba 版本选择与源码环境搭建
数据结构与算法
经典排序算法
算法理论基础
核心算法思想
数据结构基础2
数据结构基础1
坚持自律且努力,别让生活太安逸
中国 · 北京
AI 全栈开发工程师