标签: java

共 243 篇文章

K8s 部署 Spring Boot:踩过的 5 个坑

记录将 Spring Boot 微服务迁移到 Kubernetes 过程中踩过的实际问题:健康检查、ConfigMap 热更新、JVM 内存、优雅停机、日志收集。

Spring Cloud Gateway 限流与熔断实战

记录在生产环境配置 Spring Cloud Gateway 限流(Redis 令牌桶)和熔断(Resilience4j)的完整过程,包含踩坑和调参经验。

Java-218 RocketMQ Java API 实战:同步/异步 Producer

RocketMQ Java API 完整实战教程,同步/异步消息生产者(Producer)、拉取消费者(PullConsumer)与推送消费者(PushConsumer)代码示例

RabbitMQ JMS 模式详解:Queue/Topic、6 类消息与对象模型

Java 系统做异步解耦与事件驱动,需要统一理解 JMS 的消息模型、对象模型与消息类型。JMS 是标准 API(类似 JDBC),关键在 Queue/Topic 语义、Session 与确认/事务边界、消息类型取舍。

JMS Queue/Topic 集群下如何避免重复消费:ActiveMQ 虚拟主题与交付语义梳理

JMS Topic 在应用集群中广播,导致同一业务被多节点重复消费。用 ActiveMQ Virtual Topic(或 JMS 2.0 Shared Subscription)把「组间广播 + 组内竞争消费」落到中间件层。

消息队列应用场景:缓存预热+限流排队+Redis Lua 扣库存+MQ 削峰填谷

电商秒杀/抢票场景瞬时流量高峰,读写并发都很高。使用预静态+限流排队;写路径用 Redis Lua 原子预扣+MQ 异步持久化;读路径用多级缓存;实现全链路监控与隔离降级。

RabbitMQ BlockingQueue 手搓「消息中间件」雏形:生产者-消费者模型到企业级 MQ 差在哪

用 Java 并发实现一个最小可运行的「队列缓冲 + 异步解耦」消息模型。BlockingQueue 可以解释 MQ 的核心交互,但缺少持久化、ACK、重试、集群、可观测性。

消息队列选型:RabbitMQ vs RocketMQ vs Kafka

传统 IBM MQ 与新系统共存,需要开源、可运维、可扩展、一致性/可靠性。RabbitMQ 适合「可靠性优先的业务解耦」,RocketMQ 适合「事务/顺序/延迟消息」,Kafka 适合「数据管道/日志/流处理」。

Spymemcached 深入解析:线程模型、Sharding 与序列化实践全拆解

Java 服务接入 Memcached,需要搞清 Spymemcached 的线程模型、分片路由和序列化细节。Spymemcached 基于 NIO+回调实现异步 IO,通过 ketama 一致性哈希做 Sharding。

Netflix EVCache Client 接入 Memcached 实战:安装、配置与踩坑记录

Java 应用想在本地或小团队环境体验 Netflix EVCache,但服务端未开源,只能基于 Memcached 自建。通过源码编译 Memcached 1.6.39,按 EVCache 节点配置规范启动完成基本读写与链路验证。

深入拆解 EVCache 内部原理:Memcached 架构、Slab 分配与 LRU 过期机制全解析

大规模分布式缓存中使用 EVCache,需要搞清楚底层 Memcached 的内存管理与过期淘汰行为。EVCache 本质依赖 Memcached + Slab Allocation + 惰性过期 + 近似 LRU。

Guava Cache 源码剖析:LocalCache、Segment 与 LoadingCache 工作原理全解析

线上项目广泛使用 Guava Cache,但对 LocalCache / Segment / LoadingCache 具体行为缺乏源码级认知。Guava 通过 LocalCache+Segment 分段结构实现并发安全。

EVCache 入门:Netflix 级分布式缓存架构、性能指标与多区域部署全解析

想学习 Netflix 的 EVCache 系统进行自研,但只知道它是「基于 Memcached 的分布式缓存」。拆解 EVCache/Rend/Memcached/Mnemonic 四层来理解缓存层职责、性能天花板与多可用区复制模型。

Guava Cache 并发参数与 refreshAfterWrite 实战:LoadingCache 动态加载与 LRU 对比

concurrencyLevel、refreshAfterWrite 与 LoadingCache 动态加载的底层行为,并结合自定义 LinkedHashMap LRU 实现进行横向对比。

Guava Cache 疑难问题实战:OOM、过期清理、命中率异常和阻塞排查

Java 项目中使用 Guava Cache 做本地缓存,线上出现 OOM、命中率异常、线程阻塞和性能回退等疑难问题的排查与修复。

Guava Cache 实战:删除策略、过期机制与常见坑全梳理

Guava Cache 采用“懒清理 + LRU+FIFO”策略,被动删除和主动删除需要配合使用。深入解析 expireAfterAccess、expireAfterWrite 与 cleanUp。

Guava Cache 从 ConcurrentHashMap 到 LocalCache:结构、Segment 分段与队列机制

深入解析 Guava Cache 的核心实现类 LocalCache,涵盖分段锁设计、五大队列机制、回收策略与惰性清理原理。

缓存实战:本地缓存 vs 分布式缓存(含 Guava/Redis 7.2)

高并发读多写少业务,数据库顶不住,需要提升吞吐与稳定性。本地缓存做极致读性能,分布式缓存做共享与扩展,多级缓存兼顾一致性与成本。

OSS 权限控制实战:ACL / RAM / Bucket Policy 与错误排查

多团队与跨账号协作下,OSS 需同时满足公开访问、最小权限与可审计。身份用 RAM Policy,来源与资源约束用 Bucket Policy,ACL 仅用于公开读等简单场景。

AI研究-134 Java 2025:会衰退吗?LTS 路线、云原生与工程化落地趋势研究

2025 年,Java 依然是企业级后端与关键行业的主力。核心关键词:Java 25 LTS、Java 21 LTS、Spring Boot、MicroProfile、Kubernetes、Serverless、Project Loom...

OSS 实战指南:Bucket/外链/防盗链/计费与常见坑

企业与个人将图片/音视频/静态资源迁移至阿里云 OSS,需稳态运维与控费。按区域与权限精确配置,结合防盗链/CNAME/日志即可兼顾可用性与成本。

AI研究-133 Java vs Kotlin/Go/Rust/Python/Node:2025 详细对比分析 定位与选型

本文对比了Java 21/23(虚拟线程/Loom)与Kotlin 2.x、Go 1.22/1.23、Rust 1.7x、Python(PyTorch 2.x/TensorFlow 2.x)、Node.js 20/22的路线、生态...

Java 接入 FastDFS:自编译客户端与 Maven/Spring Boot 实战

Java 应用接入 FastDFS 的两种方式:官方源码编译(happyfish100/fastdfs-client-java 1.37-SNAPSHOT)和 Maven 依赖(cn.bestwu / com.github.tobato)。

AI研究-132 Java 生态前沿 2025:Spring、Quarkus、GraalVM、CRaC 与云原生落地

Spring Framework 6、Spring Boot 3.x(最低 JDK 17,支持 Java 21 虚拟线程)、GraalVM Native Image AOT、Quarkus 与 Micronaut 的云原生优化...

FastDFS 高并发优化思路:max_connections、线程、目录与同步

高并发 / 海量小文件场景下单盘或 RAID 的优化思路:升级 v5.04+,按 CPU 核数配线程,减少目录层级,根据延迟目标调 sync 参数。

AI研究-131 Java 17/21/25 全面对比:关键特性、并发优化与升级注意事项

Java 17(2021)、Java 21(2023)、Java 25(2025) 的语言与 JVM 变化,涵盖 虚拟线程(Project Loom)、记录/模式匹配(Project Amber)、ZGC/G1 与代际回收...

FastDFS 集群实战:三节点 Tracker/Storage + Nginx 接入与排障

三台主机同时部署 tracker、storage、Nginx,按轮询上传存储。关键在 Nginx+mod_fastdfs 路由与监控校验。产出:一套可复用的集群配置清单 + 版本矩阵 + 常见错误速查卡。

深入浅出 MySQL 数据库高并发架构实战:深入理解分库分表的原理与应用

数据库分库分表实战:垂直拆分(按业务模块)与水平拆分(按数据范围/Hash)、分片键选择策略、跨分片查询解决方案、分片规则配置(mycat.yml/sharding.yml)、分布式ID生成器与数据迁移。

深入浅出 MySQL MHA主从故障切换机制详解 高可用终极方案

MHA高可用方案:Manager、Node、故障处理、故障切换

深入浅出 MySQL 主从模式下 读写分离全流程详解:原理、实现与优化方案

数据库读写分离架构设计与主从延迟解决方案:MySQL binlog主从复制原理、Canal增量订阅、ShardingSphere读写分离配置、延迟监控与补偿机制、GTID模式与半同步复制。

深入浅出 MySQL 并发事务控制详解:更新丢失、锁机制与MVCC全解析

并发事务问题:更新丢失、脏读、不可重复读、幻读,锁机制:共享锁、排他锁,MVCC

深入浅出 MySQL 深入理解数据库事务与锁机制:ACID特性全解析

MySQL ACID特性与WAL机制:原子性实现原理、Redo Log与Undo Log协同、隔离级别(RC/RR)与MVCC、持久性保障的CheckPoint机制、Write Ahead Logging写前日志策略与崩溃恢复流程。

深入浅出 MySQL慢查询定位与优化攻略

慢查询日志、mysqldumpslow、EXPLAIN分析、常见优化方案

深入浅出 MySQL 索引与排序机制详解与优化实践 Filesort

filesort排序、index排序、双路排序、单路排序、聚簇索引与辅助索引排序

深入浅出 MySQL 回表查询与索引优化 覆盖索引、最左前缀原则、LIKE 查询与 NULL 值处理

回表查询、覆盖索引、最左前缀原则、LIKE查询、NULL值处理

深入浅出 MySQL EXPLAIN详解:索引分析与查询优化详解

EXPLAIN命令详解:selecttype、type、possiblekeys、key、rows、key_len、Extra

深入浅出 MySQL 聚簇索引 vs 辅助索引:结构、原理与性能全解析

MySQL聚簇索引与二级索引详解:InnoDB主键索引结构、辅助索引回表查询、覆盖索引避免回表、索引下推ICP、Multi-Range Read优化、ICP与MRR联合优化执行计划分析。

深入浅出 MySQL 索引原理与优化详解:B+Tree、Hash、二分查找全解析

索引原理:B+Tree、Hash索引、二分查找、InnoDB自适应哈希索引

深入浅出 MySQL索引类型与实战详解:原理、分类、应用与优化

索引类型:BTree、Hash、FULLTEXT、RTree,普通索引、唯一索引、主键索引、复合索引、聚簇索引

深入浅出 MySQL Binlog 全解析:记录模式、主从复制与数据恢复详解

Binlog三种记录模式:STATEMENT、ROW、MIXED,文件格式、写入机制、主从复制

深入浅出 MySQL 搞懂 MySQL Undo/Redo Log,彻底掌握事务回滚与持久化

Undo Log回滚日志、Redo Log重做日志、事务原子性、持久性、MVCC

深入浅出 MySQL InnoDB存储结构全解析:表空间、段、区、页与行格式

InnoDB存储结构:Tablespace、Segment、Extent、Page、Row,行格式:REDUNDANT、COMPACT、DYNAMIC、COMPRESSED

深入浅出 MySQL 从架构到线程:剖析存储引擎、线程模型

MySQL 5.7/8.0存储引擎优化、InnoDB线程模型:IO Thread、Purge Thread、Page Cleaner Thread、Master Thread

深入浅出 MySQL InnoDB磁盘结构全解析:表空间、日志系统与数据字典详解

InnoDB磁盘结构:系统表空间、独立表空间、通用表空间、临时表空间、Doublewrite Buffer、Redo Log、Undo Log

深入浅出 MySQL InnoDB 存储结构:Buffer Pool、写缓冲与日志机制全解

InnoDB内存结构:Buffer Pool、Change Buffer、Adaptive Hash Index、Log Buffer

深入浅出 MySQL 存储引擎全解析:InnoDB vs MyISAM 深度对比

MySQL存储引擎对比:InnoDB、MyISAM、Memory、Archive等,事务、锁机制、索引结构

深入浅出 MySQL 连接、线程、查询缓存与优化器详解

MySQL连接机制深度剖析:半双工通信协议、连接池原理(HikariCP/C3P0/Druid)、线程缓存与threadperconnection模型、查询缓存工作原理、查询优化器执行计划生成与SQL解析流程。

深入浅出 MySQL 内部架构:服务层、存储引擎与文件系统全覆盖

MySQL四层架构详解:网络连接层、服务层、存储引擎层、系统文件层

深入浅出 MySQL发展全景:从单机架构到云数据库演进实录

MySQL发展历程、主流分支、架构演变(单机->主从->分库分表->云数据库)

深入浅出 分布式服务 分布式一致性 强一致、弱一致、单调读一致、最终一致

分布式数据一致性是指在分布式系统中多个副本(replicas)之间保持数据一致。这是分布式系统的核心挑战之一,尤其是在网络不可靠和节点可能发生故障的情况下。

深入浅出 分布式服务 分布式一致性 CAP 理论 AP CP 3选2 设计取舍

2000年7月的时候,加州大学伯克利分校 Eric Brewer 教授提出了 CAP 猜想,2年后,被来自于麻省理工的 Seth Gilbert 和 Nancy Lynch 从理论上证明了猜想的可能性。

深入浅出 分布式服务 ACID 两阶段提交2PC 分布式事务

原子性是指事务中的所有操作作为一个不可分割的整体执行,要么全部成功完成,要么全部不执行。如果事务执行过程中任何操作失败,系统会将数据库回滚到事务开始之前的状态。这就像银行转账操作中的"全有或全无"原则。

深入浅出 分布式服务 ACID 三阶段提交3PC 对比2PC

3PC(Three-Phase Commit)全称为三阶段提交协议,是二阶段提交协议(2PC)的改进版本。

深入浅出 分布式服务 Paxos:分布式一致性黄金标准 详解Proposal Acceptor

Paxos 算法是由计算机科学家 Leslie Lamport 提出的一种基于消息传递的分布式一致性算法,这项开创性工作使他获得了2013年图灵奖。

深入浅出 分布式服务 Paxos 算法优化 如何保证 Paxos算法的活性

Paxos 算法是由计算机科学家 Leslie Lamport 提出的一种基于消息传递的分布式一致性算法,这项开创性工作使他获得了 2013 年图灵奖。

深入浅出 分布式服务 一致性算法 Raft 多图详解

深入浅出讲解分布式服务一致性算法Raft:Leader选举、Log复制、心跳机制、日志压缩与成员变更;以Raft论文为基础分析一致性保证与safety证明;对比Paxos算法;实际工程实现要点与注意事项。

深入浅出 分布式服务 心跳检测 与 高可用设计 详解

分布式服务心跳检测与高可用设计:心跳协议实现(TCP keepalive/应用层心跳)、故障检测(Phi Accrual Failure Detector)、租约机制与leader选举、分布式共识算法、脑裂问题处理与恢复策略。

深入浅出 分布式服务 网络通信 RPC 与 RMI 详解

在分布式系统设计中,网络通信是最基础也是最重要的组成部分。在Java生态系统中,有多种技术可以实现远程服务通信,每种技术都有其特定的应用场景和实现原理

深入浅出 分布式服务 网络通信 RPC 与 RMI 的 Java代码实现

在分布式系统设计中,网络通信是最基础也是最重要的组成部分。在Java生态系统中,有多种技术可以实现远程服务通信

深入浅出 分布式服务 网络通信 BIO NIO AIO 详解 附代码

同步 (Synchronize):用户进程触发IO操作后,必须等待IO操作完成或轮询检查IO操作是否就绪。例如:传统的BIO模式中,当调用read()方法时,必须等到数据真正从内核空间拷贝到用户空间后才能返回。

深入浅出 分布式服务 Netty详解 EventLoop

Netty 是由 JBOSS 提供的一个高性能、异步的、基于事件驱动的网络应用框架。它建立在 Java NIO 技术之上,通过简化和抽象 NIO 的复杂性,让开发者能够专注于业务逻辑的实现,而无需处理底层网络通信的细节。

深入浅出 分布式服务 Netty 实现服务端与客户端 附Java代码

Netty 是一个面向 JVM 的异步事件驱动网络开发框架,目标是让高并发、高吞吐的网络程序开发像写普通业务代码一样简单。

深入浅出 分布式服务 Netty实现自定义RPC 附详细代码

Netty 是一个面向 JVM 的异步事件驱动网络开发框架,目标是让高并发、高吞吐的网络程序开发像写普通业务代码一样简单。

深入浅出 RPC 单体架构 垂直架构 分布式架构 微服务架构

随着互联网技术的快速发展和移动设备的普及,全球互联网用户数量已从2000年的3.6亿增长至2023年的53亿。与此同时,网站流量呈现出指数级增长态势。

深入浅出 RPC Dubbo 详细介绍 上手指南

RPC Dubbo技术详解:服务注册与发现(Zookeeper/Nacos)、RPC通信原理(Netty/Tomcat)、Dubbo协议与序列化、负载均衡策略(Random/RoundRobin/LeastActive)、服务降级与熔断机制。

深入浅出 RPC Dubbo 上手 父工程配置编写 附详细POM与代码

在 Dubbo 分布式服务框架中,所有的服务调用都是基于 Java 接口进行交互的。这种接口契约式设计确保了服务提供者和消费者之间的解耦。具体工作流程如下

深入浅出 RPC Dubbo 上手 生产者模块详解

Dubbo生产者模块配置与运行机制:服务导出(export)流程、动态代理实现(javassist/javassist)、负载均衡策略、集群容错(Failover/Failfast/Failsafe)、SPI扩展机制与Filter拦截链。

深入浅出 RPC Dubbo 上手 消费者模块详解+主程序 附代码

解析配置:ReferenceConfig, DubboBootstrap,读取配置并合并 注册中心订阅:RegistryDirectory,向 Nacos/ZooKeeper 订阅服务列表 目录路由:

深入浅出 RPC Dubbo Admin可视化管理 安装使用 源码编译、Docker启动

Dubbo Admin 是一个功能强大的可视化管理和监控平台,主要用于管理和监控 Dubbo 微服务架构中的各项服务。它提供了直观的用户界面,让运维人员和开发者能够更方便地进行服务治理和运维工作。

深入浅出 RPC Dubbo Java SPI机制详解:从JDK到Dubbo的插件式扩展

Java SPI(Service Provider Interface)是一种内置的服务发现机制,结合接口编程、策略模式和配置文件,允许在运行时动态加载实现类。SPI广泛用于 JDBC、JNDI、日志、XML 解析等场景。

深入浅出 RPC Dubbo Adaptive 与 Filter 拦截器机制全解析:动态扩展与服务链路增强实践

Dubbo 中的 Adaptive 功能是一种动态适配机制,它能够根据运行时条件自动选择并加载最合适的扩展点实现。该功能的核心是解决在分布式系统中如何根据不同的运行环境和配置动态切换具体实现类的问题。

深入浅出 RPC Dubbo 负载均衡全解析:策略、配置与自定义实现实战

负载均衡(Load Balancing)是一种将工作负载或网络流量分配到多个计算资源的技术。其核心目标是通过合理分配请求,优化资源使用,最大化吞吐量,最小化响应时间,同时避免单个资源过载。

深入浅出 RPC Dubbo 动态路由架构详解:从规则设计到上线系统集成

Dubbo中的路由规则是微服务架构中实现流量控制和分发的重要机制,它决定了客户端请求将被路由到哪些目标服务提供者实例。

深入浅出 RPC Dubbo 动态服务降级:从雪崩防护到配置中心秒级生效

服务降级是指当服务器面临突发流量压力或系统资源紧张时,根据当前业务状况和流量特征,有策略地降低某些非核心或次要服务的功能级别,以释放服务器资源,确保核心业务功能的正常运行。这是一种主动的系统保护机制。

深入浅出 分布式服务 基本概念 对比集群 常见模式 通信方式 三态详解

分布式系统是一个硬件或软件组件分布在不同的网络计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统。分布式服务指的是将系统中的不同功能模块部署在多个服务器节点上,通过网络进行通信与协作,实现整体系统的功能目标。

深入浅出 Tomcat 性能优化 JVM内存模型 垃圾回收GC Tomcat配置优化

This article covers JVM memory model and Tomcat performance optimization. Key topics include: JVM architecture。

深入浅出 Tomcat SSL工作原理 性能优化 参数配置 JVM优化

HTTPS 是用来加强数据传输安全的,HTTP超文本传输协议,明文传输是非常不安全的,HTTPS在传输的过程中会对传输的数据进行加密。

深入浅出 Tomcat 手写 Tomcat 类加载机制 双亲委派机制 生命周期 插件化

JVM 的类加载机制(Class Loading Mechanism)是 Java 虚拟机中一个非常核心的部分,它决定了类从哪里来、怎么加载、什么时候初始化等一系列行为。

深入浅出 Tomcat 手写 Tomcat 实现【03】启动测试!StatisResourceUtil Servlet

我们要手写实现一个 Mini 版的 Tomcat,我们要实现的是,作为一个服务器软件,可以通过我们的浏览器客户端发送HTTP请求,Minicat处理之后,处理结果可以返回给浏览器的客户端。

深入浅出 Tomcat 手写 Tomcat 实现【02】HttpServlet Request RequestProcessor

This article explains how to implement a simplified version of Tomcat called MiniCat. The core components include

深入浅出 Tomcat 手写 Tomcat 实现【01】MiniCat Bootstrap HttpServlet

我们要手写实现一个 Mini 版的 Tomcat,我们要实现的是,作为一个服务器软件,可以通过我们的浏览器客户端发送HTTP请求,Minicat处理之后,处理结果可以返回给浏览器的客户端。

深入浅出 Tomcat 核心架构 核心配置详解 主要标签配置详解 Server、Service、Executor、Engine

从 Tomcat 官网下载 Core 包:https://tomcat.apache.org/download-90.cgi

深入浅出 Tomcat 核心架构 Catalina 容器全解析 启动流程 线程机制

Catalina 是 Apache Tomcat 的 Servlet 容器实现,其主要职责包括

深入浅出 Tomcat 核心架构与处理流程全解析 Coyote IO模型与协议

浏览器访问服务器使用的是HTTP协议,HTTP是应用层的协议,用于定义数据通信的格式,具体的数据传输使用的是TCP/IP协议。

深入浅出 Nginx - 底层进程机制 Master Worker 机制原理 常用指令

Nginx 之所以能在同一台服务器上支撑数十万并发连接,根本原因不是"高魔法"配置,而是 Master–Worker 多进程 + 事件驱动 的组合设计。Master 进程负责管控,Worker 进程负责真正的网络 I/O。

深入浅出 Nginx - 基本配置方式 nginx.conf Events块 HTTP块 反向代理 负载均衡

Nginx的配置文件nginx.conf包含三个内容: 全局块 events块 http块

深入浅出 Nginx - 缘起与发展 场景与配置快速上手

Nginx是一个高性能的HTTP服务和反向代理的Web服务器,核心特点是占用内存少,并发能力强。

深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

事务(Transaction)是指一组操作,要么全部成功,要么全部失败,保持数据一致性。Spring 提供对声明式事务的支持,底层基于 AOP 原理,实现对方法调用的增强。

深入浅出 Spring - AOP切面增强 核心概念 通知类型 XML+注解方式 附代码

method: 用于指定前置通知的方法名称 pointcut: 用于指定切入点表达式 pointcut-ref: 用于指定切入点表达式的作用

深入浅出 Spring - 声明式事务的支持 事务控制 事务概念 四大特性 隔离级别

编程式事务 在业务中添加事务控制代码,这样的事务控制机制就叫做编程式事务

深入浅出 Spring - AOP切面增强 核心概念 相关术语 Proxy配置

AOP 的本质:在不改变原有逻辑的情况下,增强横切的逻辑,横切逻辑代码往往是权限校验代码、日志代码、事务控制代码、性能监控代码。

深入浅出 Spring - IoC容器体系 循环依赖 原型Bean 原型作用域 Lazy ObjectFactory

循环依赖是循环引用,也就是两个或者两个以上的 Bean 互相持有对方,最终形成环。

深入浅出 Spring - IoC容器体系 BeanFactory过程分析 Bean Lazy-Init

本文深入分析 Spring IoC 容器体系,讲解 BeanFactory 过程分析以及 Bean 懒加载机制。

IoC容器源码分析:Bean实例化与初始化流程

通过断点调试深入分析Spring IoC容器的初始化流程,详细讲解Bean的创建时机、AbstractApplicationContext.refresh方法核心逻辑。

IoC容器体系:Bean生命周期与PostProcessor详解

详细讲解Spring IoC容器体系结构,Bean生命周期全过程,以及BeanPostProcessor和BeanFactoryPostProcessor的执行时机。

FactoryBean和BeanFactory详解与BeanPostProcessor后置处理器

深入讲解Spring中的FactoryBean和BeanFactory的区别,Bean的延迟加载机制,以及BeanPostProcessor和BeanFactoryPostProcessor后置处理器的使用。

IoC基础:纯注解方式与SpringConfig配置

详细介绍Spring纯注解配置方式,包括@Configuration、@ComponentScan、@Bean、@PropertySource等注解的使用,以及在Web环境下的配置。

IoC基础:XML与注解结合方式配置

讲解Spring中XML与注解结合的配置模式,包括注解与XML标签的对应关系,@Autowired、@Qualifier、@Resource等依赖注入注解的使用。

IoC基础:纯XML启动与Bean、DI注入详解

详细讲解Spring纯XML模式下的IoC配置,包括Bean的三种创建方式、生命周期、作用域,以及构造函数注入和Set方法注入的XML配置。

IoC基础:启动IoC容器的方式汇总

详细介绍Spring IoC容器的启动方式,包括Java环境下的ClassPathXmlApplicationContext、FileSystemXmlApplicationContext,以及Web环境下的XML和配置类方式。

实现简易IoC-04:手动实现AOP与事务控制

在业务基础上手动实现AOP面向切面编程,通过JDK动态代理和CGLIB实现事务管理器,完成事务的自动提交与回滚。

实现简易IoC-03:手动实现IoC容器

手把手教你手动实现IoC容器,通过BeanFactory和XML配置文件管理Bean依赖,完成依赖注入的核心实现。

FastDFS 架构实战:轻量 Tracker、对等存储与上传/同步原理全解

FastDFS 架构设计理念:轻量级 Tracker、对等存储结构、文件上传与同步原理。

实现简易IoC-02:无IoC与AOP场景下实现业务

在没有使用Spring的情况下,手动实现业务逻辑分层,包括DAO层、Service层和Controller层,展示传统开发方式的依赖管理问题。

实现简易IoC-01:Servlet介绍与基本代码编写

手把手教你实现简易Spring IoC容器,第一部分介绍Servlet的基本概念、特点和工作原理,并编写第一个Servlet程序。

FastDFS 架构详解:Storage/Tracker/Group 设计与实战

FastDFS 核心架构详解:Tracker Server、Storage Server、Group 分组机制。

Spring概述:发展历史与核心思想IoC、AOP

全面介绍Spring框架的基本概念、发展历程,从EJB到Spring的演进,详细讲解Spring的核心思想IoC控制反转和AOP面向切面编程。

手写ORM框架4:框架优化与DefaultSqlSession代理实现

对手写ORM框架进行优化,重点讲解DefaultSqlSession中getMapper方法的实现,利用JDK动态代理创建Mapper接口的代理对象。

FastDFS 6.15.0+Nginx 动态模块实战:源码编译到访问,从0到1详细配置流程

FastDFS 6.15.0 源码编译安装与 Nginx fastdfs-nginx-module 配置完整指南。

手写ORM框架3:SqlSession、Executor工作原理详解

深入剖析手写ORM框架中SqlSession和Executor的工作原理,详细讲解SqlSessionFactoryBuilder、DefaultSqlSession、SimpleExecutor的实现机制。

手写ORM框架2:Resources、MappedStatement、XMLBuilder实现

本文手把手教你手写ORM框架,详细介绍Resources、MappedStatement、XMLBuilder等核心组件的实现,包括配置文件解析、映射文件处理等关键步骤。

FastDFS 从单机到分布式文件存储:实战与架构取舍

FastDFS 分布式文件系统架构详解,从单机到分布式的演进路径。

深入浅出 MyBatis - 手写ORM框架1 测试JDBC问题 解决方案

手写ORM框架系列第一篇,介绍传统JDBC开发的问题和缺点,以及ORM框架的设计思路和解决方案。

深入浅出 MyBatis - 用到的设计模式 源码剖析 代理设计模式

详细介绍代理设计模式的概念、分类和MyBatis中的具体体现,包括静态代理和动态代理的代码实现,以及MapperProxy的源码分析。

Neo4j + Spring Boot 实战:从 Driver 到 Repository 的整合与踩坑

Spring Boot 整合 Neo4j 完整指南:Java Driver、Neo4jTemplate、Repository 实战。

深入浅出 MyBatis - 用到的设计模式 源码剖析 建造者模式、工厂模式

详细介绍MyBatis源码中使用的设计模式,包括建造者模式、工厂方法模式、单例模式、代理模式、组合模式等,以及在MyBatis中的具体体现。

Neo4j 访问方式实战:嵌入式 vs 服务器(含 Java 示例与踩坑)

Neo4j 嵌入式数据库与服务器模式对比,Java API 访问示例。

Neo4j 备份与恢复 + 预热与执行计划实战

Neo4j数据库备份恢复与数据预热:neo4j-admin dump备份与load恢复、数据预热策略(warm-up)加速查询、执行计划分析(EXPLAIN/PROFILE)、查询性能调优、数据一致性验证。

Neo4j 事务、索引与约束实战:语法、并发陷阱与速修清单

Neo4j事务处理与索引创建实战:事务隔离级别(BEGIN/COMMIT/ROLLBACK)、label级索引与relationship索引、composite index复合索引、constraint唯一约束与存在性约束...

深入浅出 MyBatis - 注解开发 注解映射 一对多 与 多对多

详细介绍MyBatis注解开发中的一对多和多对多映射,包括@Many注解的用法、用户与订单、用户与角色的关系实现,以及注解模式的优缺点分析。

深入浅出 MyBatis - 注解开发 注解映射 基本介绍 与 一对一模型

详细介绍MyBatis注解开发方式,包括常用注解(@Select、@Insert、@Update、@Delete、@Results等)的用法,以及注解实现一对一模型映射。

Neo4j CQL 实战速查:字符串/聚合/关系与多跳查询

Neo4j CQL 函数速查:字符串函数、聚合函数、关系函数与最短路径查询。

深入浅出 MyBatis - 多对多模型 SqlMapConfig 与 Mapper 详细讲解测试

详细讲解MyBatis中的多对多模型映射,包括中间表设计、用户与角色关系实现、collection标签用法,以及多对多查询的完整代码示例。

深入浅出 MyBatis - 一对多模型 SqlMapConfig 与 Mapper 详细讲解测试

详细讲解MyBatis中的一对多模型映射,包括数据库表设计、collection标签用法、Java实体类定义,以及一对多查询的实现与测试。

Neo4j CQL 实战:WHERE、DELETE/DETACH、SET、排序与分页

Neo4j CQL 高级查询:WHERE 条件筛选、DELETE 删除、SET 更新、ORDER BY 排序与分页。

深入浅出 MyBatis - 一对一模型 SqlMapConfig 与 Mapper 详细讲解测试

详细讲解MyBatis中的一对一模型映射,包括数据库表设计、Java实体类定义、Mapper接口与XML配置,以及resultMap高级映射用法。

深入浅出 MyBatis - 配置深入 动态SQL 参数、循环、片段

深入讲解MyBatis动态SQL配置,包括if条件判断、where标签、foreach循环遍历、sql片段抽取等核心用法。

Neo4j CQL 实战:CREATE/MATCH 与关系建模速通 案例实测

Neo4j CQL 查询语言详解:CREATE 创建节点关系、MATCH 查询,附完整代码示例。

深入浅出 MyBatis - Mapper Proxy invoke 源码剖析

详细介绍MyBatis Mapper Proxy动态代理的实现原理,包括getMapper源码解析、MapperMethod执行流程、invoke方法分析。

深入浅出 MyBatis - SqlSessionFactory 与 SqlSession DAO与Mapper 代理开发

深入讲解MyBatis核心组件:SqlSessionFactory与SqlSession的工作原理,DAO层传统实现方式,以及MyBatis代理开发模式。

深入浅出 MyBatis - 快速入门(无 Spring) 增删改查 核心配置讲解 XML 与 注解映射

MyBatis快速入门续篇,详细讲解增删改查操作、XML映射文件核心配置、注解开发方式,以及数据源、事务管理等配置。

深入浅出 MyBatis - SqlSession Executor StatementHandler 源码分析

详细介绍MyBatis核心架构设计,包括三层架构、SqlSession、Executor、StatementHandler的工作原理和源码分析,以及MyBatis的初始化流程。

Neo4j 安装与最小闭环 | 10 分钟跑通 + 远程访问 Docker neo4j.conf

Neo4j 图数据库 Docker 安装与远程访问配置,10 分钟快速入门指南。

深入浅出 MyBatis - 插件机制 PageHelper 与 通用 Mapper

详细介绍MyBatis分页插件PageHelper和通用Mapper的使用方法,包括配置、代码示例、PageInfo类用法以及通用Mapper的CRUD操作。

深入浅出 MyBatis - MyBatis 快速入门(无 Spring) POM Mapper 核心文件 增删改查

MyBatis快速入门教程,详细介绍MyBatis开发步骤,包括POM依赖配置、Mapper映射文件、SqlMapConfig核心配置文件,以及增删改查操作。

深入浅出 MyBatis - MyBatis 概念 ORM映射关系 常见ORM 详细发展历史

本文深入介绍MyBatis框架,从ORM概念讲起,详解MyBatis的发展历史、技术优势,以及与Hibernate等常见ORM框架的对比。

深入浅出 MySQL事务隔离级别:读未提交、已提交、可重复读与串行化

深入浅出讲解MySQL事务隔离级别:读未提交、读已提交、可重复读、串行化,剖析脏读、不可重复读、幻读问题及解决方案。

深入浅出 MySQL 锁机制图文详解:从表锁到行锁,从理论到实战

深入浅出讲解MySQL锁机制:悲观锁、乐观锁、表级锁、行级锁(共享锁、排他锁)、意向锁,图文详解锁分类与实战应用。

深入浅出 MySQL 死锁全解析:原理、场景复现与优化

深入浅出讲解MySQL死锁:死锁定义、必要条件、表锁死锁、行级死锁、共享锁转排他锁、死锁排查与避免策略。

深入浅出 MySQL 设计攻略:可用性、扩展性、一致性详解

深入浅出讲解MySQL数据库设计:可用性(冗余、故障转移)、扩展性(分库分表、读写分离)、一致性(强一致性与最终一致性)。

深入浅出 MySQL 主从复制详解:读写分离、高可用与半同步复制全覆盖

深入浅出讲解MySQL主从复制:主从模式、读写分离、半同步复制原理与配置。

深入浅出 MySQL 并行复制技术详解:从5.6到8.0的演进深入详解

深入浅出讲解MySQL并行复制技术:从5.6基于库的并行到5.7基于组提交再到8.0基于writeset的演进。

深入浅出 MySQL 双主架构+MMM高可用:原理与故障切换机制详解

深入浅出讲解MySQL双主架构与MMM高可用方案:双主模式、MMM故障处理、监控机制。

深入浅出 MySQL MHA主从故障切换机制详解 高可用终极方案

深入浅出讲解MySQL MHA高可用方案:MHA架构、故障处理、主备切换、延迟问题与解决方案。

深入浅出 MySQL 分布式主键策略:UUID、SnowFlake、COMB、Redis、数据库ID表优劣全对比

本文深入介绍MySQL分布式主键策略,包括UUID、SnowFlake、COMB、Redis和数据库ID表等方案的原理、优缺点及适用场景对比。

深入浅出 MySQL 分片技术全景解析:范围、哈希与一致性哈希对比

分片是分布式数据库中实现横向扩展的核心技术,将完整数据库按规则拆分成多个部分存储在不同节点。常见分片策略包括范围分片、哈希取模分片和一致性哈希分片。

深入浅出 MySQL 扩容全攻略:触发条件、迁移方案与性能优化

探讨MySQL数据库横向扩容方案,主要解决单库在容量、性能和并发上的瓶颈问题。扩容触发条件包括磁盘使用率超80%、响应时间超500ms、连接数超70%上限。

深入浅出 MySQL 开源分布式中间件 ShardingSphere 深度解读

Apache ShardingSphere是面向关系型数据库的分布式中间件生态系统,核心定位是增强而非替代传统数据库。它通过插件化架构提供水平扩展、分片、读写分离和分布式事务等能力。

深入浅出 MySQL Sharding-JDBC 全面解析:轻量级分库分表与读写分离解决方案

详细介绍Sharding-JDBC,一款轻量级Java数据库中间件,主要解决分库分表、读写分离及分布式事务等问题。

深入浅出 MySQL Sharding-JDBC 深入理解分片机制:真实表、逻辑表与绑定表全解析

在分布式数据库中,分片机制通过真实表、逻辑表、数据节点和绑定表实现数据的高效存储与查询。绑定表确保主表与子表使用相同分片规则,提升关联查询效率。

深入浅出 MySQL ShardingSphere 分片剖析:SQL 解析、路由、改写与执行全流程详解

深入探讨ShardingSphere分片流程,包括SQL解析、查询优化、SQL路由、SQL改写、SQL执行及结果归并六大环节。

深入浅出 MySQL ShardingSphere 分片剖析:SQL 支持范围、限制与优化实践

深入探讨ShardingSphere在分片场景下对SQL的支持范围、限制条件以及优化实践。

深入浅出 MySQL ShardingSphere 从主从复制到分库分表:读写分离架构全景剖析

读写分离是一种常见的数据库架构优化方案,通过主从复制机制将写操作集中在主库,而将读操作分散至多个从库。

深入浅出 MySQL ShardingSphere 强制路由(Hint)机制详解与最佳实践

在分布式数据库场景中,ShardingSphere提供Hint机制,通过显式指定路由配置实现强制路由,绕过默认分片策略直接定向至指定节点执行。

深入浅出 MySQL ShardingSphere 数据脱敏实战:透明加解密与合规保护的最佳实践

数据脱敏是一种关键的数据安全技术,通过对敏感信息进行替换、加密、扰动等方式实现数据可用与隐私保护的平衡。ShardingSphere提供了完善的脱敏模块。

深入浅出 MySQL Seata框架详解:分布式事务的四种模式与核心架构

Seata是阿里巴巴开源的分布式事务解决方案,提供一站式事务管理,具备高性能、低侵入性和多语言支持等特性。

深入浅出 MySQL 深入解析 XA 分布式事务:ShardingSphere 的整合原理与实践

传统方式依赖数据库厂商提供的XA驱动和应用服务器的事务管理器,现代系统多采用嵌入式事务管理器。ShardingSphere提供跨库XA事务支持,采用两阶段提交协议保证强一致性。

深入浅出 MySQL 解析 ShardingSphere Saga 柔性事务实现原理

ShardingSphere通过整合第三方servicecomb-saga组件实现柔性事务,利用SPI动态注入和反向SQL技术自动生成补偿操作。

深入浅出 MySQL Sharding-Proxy 深度解析:零代码入侵的分库分表解决方案

ShardingSphere生态中的Sharding-Proxy采用透明化数据库代理架构,无需修改应用代码即可实现分库分表、读写分离、分布式事务与数据加密等功能。

深入浅出 MySQL MyCat 分布式数据库中间件详解:架构、功能与应用场景

MyCat是一个开源的分布式数据库中间件,完全兼容MySQL协议,核心功能包括分库分表、读写分离和结果集合并,支持多种分片策略。

深入浅出 MySQL MyCat 分布式数据库分片策略详解:E-R分片、全局表与分片规则

MyCat分布式数据库分片策略包括E-R表分片策略、全局表机制、分片节点、节点主机和分片规则。

深入浅出 MySQL MyCat 深入解析 核心配置文件 server.xml 使用与优化

server.xml是Mycat的核心配置文件,集中保存了系统运行所需的关键参数,包括系统参数、用户权限、防火墙配置和性能调优。

深入浅出 MySQL MyCat 深入解析 schema.xml 配置详解:逻辑库、逻辑表、数据节点全攻略

schema.xml是Mycat的核心配置文件,管理逻辑数据库、逻辑表、数据节点和数据主机。

深入浅出 MySQL MyCat 使用指南:安装步骤、服务管理与分片规则详解

MyCAT是一款开源的数据库中间件,支持MySQL协议,常用于分库分表和数据分片管理。安装步骤包括解压、配置环境变量及执行启动命令。

深入浅出 MySQL事务详解与实测:ACID特性、隔离级别及应用场景 最小化测试

MySQL数据库事务是一组作为单个逻辑工作单元执行的SQL操作集合,遵循ACID原则:原子性、一致性、隔离性和持久性。

深入浅出 MySQL事务隔离级别全解析:从READ UNCOMMITTED到SERIALIZABLE SQL实测

MySQL事务隔离级别包括READ UNCOMMITTED、READ COMMITTED、REPEATABLE READ和SERIALIZABLE四种,每种级别解决不同的并发问题。

深入浅出 MySQL 数据库事务中的四大问题解析:脏读、不可重复读、重复读与幻读

数据库事务中的常见问题包括脏读、不可重复读、重复读与幻读。这些问题都与数据库的隔离级别密切相关。

深入浅出 MySQL Spring Boot @Transactional 使用指南:事务传播、隔离级别与异常回滚策略

详细介绍Spring Boot中@Transactional注解的各个参数,包括事务传播机制、隔离级别、异常回滚策略等。

深入浅出 MySQL Spring Boot 声明式事务与编程式事务的使用与对比

介绍声明式事务和编程式事务的概念、使用方式及对比分析。声明式事务通过@Transactional注解实现,编程式事务通过TransactionTemplate实现。

深入浅出 MySQL Spring Boot 事务传播机制全解析:从 REQUIRED 到 NESTED 的实战详解

事务传播是Spring中处理事务边界的重要机制,定义了方法在调用链中与事务上下文的交互方式。

深入浅出 MySQL Spring事务失效的常见场景与解决方案详解(1)

Spring事务失效常见于类未被Spring管理、事务管理器未启动、方法修饰不当(final、static、private方法)、同类内部调用等场景。

深入浅出 MyBatis - 插件机制 插件原理 自定义插件 源码分析

详细介绍MyBatis插件机制,包括插件原理、自定义插件开发、四大核心组件的拦截、@Intercepts注解使用以及源码分析。

深入浅出 MySQL Spring事务失效的常见场景与解决方案详解(2)

Spring事务失效常见场景包括访问权限不是public、数据库存储引擎不支持事务、readOnly配置错误、事务超时时间过短、错误的传播机制等。

深入浅出 MySQL Spring事务失效的常见场景与解决方案详解(3)

Spring事务失效场景包括rollbackFor配置错误、事务注解被覆盖、嵌套事务问题等。

深入浅出 MySQL Spring事务失效的常见场景与解决方案详解(4)

Spring事务失效场景包括多线程调用、异常捕获未回滚、手动抛出异常错误等。多线程场景下子线程无法继承父线程的ThreadLocal变量导致事务失效。

深入浅出 MongoDB BSON详解:MongoDB核心存储格式与JSON的区别与应用场景

BSON是MongoDB的核心存储格式,是一种二进制编码的类JSON格式。相比JSON,BSON支持更多数据类型如Date、Binary、ObjectId等,性能更优。

深入浅出 MongoDB 基本操作详解:数据库查看、切换、创建集合与删除完整教程

MongoDB常用命令包括show dbs查看数据库、use切换数据库、db.createCollection()创建集合、show collections查看集合、db.collection.drop()删除集合。

深入浅出 MongoDB 数据插入、批量写入、BSON 格式与逻辑查询and or not操作指南

MongoDB数据操作包括单条insertOne()插入和批量insertMany()插入。查询操作符包括$eq、$ne、$gt、$lt等,逻辑操作包括$and、$or、$not。

深入浅出 MongoDB 分页查询详解:skip() + limit() + sort() 实现高效分页、性能优化

MongoDB通过skip()、limit()和sort()方法组合实现分页查询,性能优化建议包括避免大数据skip和使用范围查询替代。WriteConcern控制写入确认级别和journal日志。

深入浅出 MongoDB 聚合操作:$match、$group、$project、$sort 全面解析 Pipeline

MongoDB聚合框架通过多阶段管道处理文档,实现类似SQL中GROUP BY、JOIN、SUM、AVG等复杂运算。常用阶段包括$match、$group、$project、$sort。

深入浅出 MongoDB 索引机制:类型、原理与最佳实践 搞懂索引设计与优化

MongoDB索引是提升查询性能的核心机制,包括单键索引、复合索引、多键索引、地理索引、全文索引和哈希索引。

深入浅出 MongoDB 索引详解:索引管理、explain 执行计划与性能瓶颈分析

MongoDB索引管理包括createIndex、getIndexes、dropIndex等操作。explain分析支持queryPlanner、executionStats、allPlansExecution三种模式...

深入浅出 MongoDB 索引详解 性能优化:慢查询分析 索引调优 快速定位并解决慢查询

MongoDB慢查询分析通过内置Profiler实现,设置db.setProfilingLevel(1, m)记录慢查询。EXPLAIN分析帮助识别性能瓶颈和优化查询。

深入浅出 MongoDB 全面的适用场景分析与选型指南 场景应用指南

MongoDB适用于网站数据存储、缓存系统、大数据分析、物联网、社交媒体、直播平台等多种场景。不适合需要复杂事务和高度规范化的场景。

深入浅出 MongoDB 用Java访问 MongoDB 数据库 从环境搭建到CRUD完整示例

Java访问MongoDB数据库的完整指南,包括环境搭建、Maven依赖、连接MongoDB、CRUD操作、POJO映射、索引管理、聚合查询和事务处理。

MongoDB Spring Boot 连接实战 | Template vs Repository(含索引与常见坑)

Spring Boot连接MongoDB的两种方式:MongoTemplate模板方式和MongoRepository仓库方式,含完整Java代码示例和常见问题排查。

MongoDB 内嵌、引用怎么选?逻辑结构与引擎分析

MongoDB数据建模选择内嵌还是引用,遵循三原则:一对少嵌入、增长无上限用引用、跨集合关联用$lookup+索引。WiredTiger默认即可。

MongoDB 存储引擎 WiredTiger vs InMemory:何时用、怎么配、如何验证 mongod.conf

MongoDB两种主要存储引擎WiredTiger和InMemory的对比、配置方法及验证步骤。生产环境推荐使用WiredTiger。

MongoDB 复制集从概念到简易实战 | oplog,心跳与选举一文读懂

MongoDB复制集认知:oplog位置与幂等性,心跳频率与选举超时、成员/投票上限(50/7),并指出4.0起移除主从复制。

MongoDB 副本集容器化 10 分钟速查卡|keyfile + --auth + 幂等 init 附 docker 示例

MongoDB 7副本集的容器化最佳实践:生成keyfile、显式开启--auth,用一次性容器完成rs.initiate与管理员创建。

MongoDB副本集部署实战 单机三实例/多机同法 10 分钟起集群 + 选举/读写/回滚全流程

MongoDB副本集的单机三实例部署指南,包括配置、初始化、添加/移除节点、选举、读写分离和回滚操作。

MongoDB 集群分片 Sharding 分片详解 最小可跑示例 片键决策 均衡迁移

MongoDB分片集群详解:分片由Shard、Config Server、Mongos组成。片键选择包括范围分片、哈希分片、区域分片。包含最小可运行示例。

MongoDB 分片集群实战 万字长文超详细 | 搭建/校验/均衡/回滚(含脚本与速查卡 / 2025)

手把手搭建MongoDB分片集群(configsvr×3 + 两套shard副本集×3节点 + 多mongos),包括配置、初始化、添加分片、均衡和回滚。

MongoDB 生产安全加固实战:10 分钟完成认证、最小权限、角色详解

MongoDB生产环境安全加固指南,包括认证开启、RBAC最小权限、内网bindIp/防火墙ACL、TLS/SSL加密。

MongoDB 认证与权限实战:单实例与分片集群 整体认证配置实战 最小化授权/错误速查/回滚剧本

MongoDB认证与权限配置,从单实例到分片集群,按先建admin/root→启用authorization→按库分权的顺序落地。

Neo4j 图论详解 欧拉路径与欧拉回路 10 分钟跑通:Python NetworkX 判定实战

欧拉路径/欧拉回路的判定:无向图看连通性与奇度顶点数,有向图看弱连通与入出度平衡。文内提供基于Python NetworkX的最小可运行示例。

深入浅出 MyBatis - 二级缓存整合Redis 代码测试 与 原理探究 源码分析

详细介绍MyBatis二级缓存整合Redis的实现方法,通过分布式缓存实现跨服务共享,包含pom配置、mapper配置、测试代码和源码分析。

深入浅出 MyBatis - 一级缓存 代码测试 与 原理探究 源码 Executor

详细介绍MyBatis一级缓存的工作原理、代码测试、失效场景以及源码分析。一级缓存是MyBatis默认开启的本地缓存,作用域为SqlSession级别。

深入浅出 MyBatis - 二级缓存 代码测试 与 原理探究 源码 Executor

详细介绍MyBatis二级缓存的工作原理、开启配置、代码测试以及源码分析。二级缓存是基于Mapper的namespace的,多个SqlSession可以共享。

大数据-75 Spark Super WordCount:文本清洗 + 词频统计 + MySQL 持久化

实现一个完整的生产级词频统计流水线:小写转换、标点去除、停用词过滤、词频计数,最终通过 foreachPartition 高效写入 MySQL,对比逐条插入与分区批量写入的性能差异。

大数据-178 Elasticsearch 7.3 Java 实战:索引与文档 CRUD 全流程示例

elasticsearch-rest-high-level-client 实现索引和文档的增删改查,包括:通过 JSON 与 XContentBuilder 两种方式创建索引、配置分片与副本、删除索引、插入单条文档...

大数据-69 Spark RDD 深度解析:五大特性、设计优势与典型应用场景

全面解析 Spark 核心数据抽象 RDD 的五大关键特征(分区、计算函数、依赖关系、分区器、优先位置),以及惰性求值、容错机制和窄/宽依赖的核心原理。

大数据-70 Spark RDD 创建与 Transformation 操作全攻略

详解 Spark RDD 的三种创建方式(parallelize、textFile、从已有 RDD 转换),以及 map、filter、flatMap、groupBy、sortBy 等常用 Transformation 算子的使用与惰性求值...

大数据-62 Kafka Topic 管理与运维实战:命令详解 + 副本分配策略 + Java API

全面介绍 Kafka Topic 的运维管理方法,包括 kafka-topics.sh 命令操作、副本均衡分配算法原理,以及 KafkaAdminClient Java API 的核心用法。

大数据-59 Kafka Producer 拦截器与拦截器链机制详解

讲解 Kafka 0.10 引入的 Producer 拦截器机制,包括 onSend 和 onAcknowledgement 两个拦截点的作用、拦截器链的执行顺序与错误隔离,以及自定义拦截器的完整实现。

大数据-60 Kafka Consumer 消费流程、心跳机制与参数调优

详解 Kafka Consumer Group 的消费模型、分区分配策略、心跳保活机制,以及 session.timeout.ms、heartbeat.interval.ms、max.poll.interval.ms 等关键参数的调优实践。

大数据-147 Java 访问 Apache Kudu:从建表到 CRUD(含 KuduSession 刷新模式与实战)

Java 客户端(kudu-client 1.4.0)连接 Apache Kudu 多 Master(示例端口 7051/7151/7251),完成建表、插入、查询、更新、删除全流程,并对 KuduSession 刷新模式(AUTOFLUS...

大数据-57 Kafka Producer 消息发送流程与核心参数详解

深入解析 Kafka Producer 初始化、消息拦截、序列化、分区路由、缓冲批量发送、ACK 确认等完整发送链路,并给出关键参数的调优建议。

大数据-58 Kafka 序列化机制与分区策略:自定义实现详解

深入讲解 Kafka 消息序列化原理与分区路由策略,包含自定义 Serializer 和 Partitioner 的完整代码实现,帮助掌握消息精准路由与高效传输。

大数据-55:Kafka 实战操作——Shell 管理命令与 Java 客户端示例

覆盖 Kafka 日常运维的 Shell 命令(主题管理、消息收发)与 Java 客户端编程(Producer/Consumer 完整代码),包含关键配置参数说明和 ConsumerRebalanceListener 使用。

大数据-56 Spring Boot 整合 Kafka 实现分布式消息收发

详解如何在 Spring Boot 项目中集成 Kafka,包括依赖配置、KafkaTemplate 同步/异步发送消息、@KafkaListener 消费消息的完整实践。

大数据-131 Flink CEP 实战 24 小时≥5 次交易 & 10 分钟未支付检测 案例附代码

Flink CEP(Complex Event Processing)复杂事件处理机制,结合实际案例深入讲解其在实时流式计算中的应用原理与实战实现。通过定义事件模式(Pattern)、模式流(PatternStream)及 select 函...

大数据-132 Flink SQL 实战入门 | 3 分钟跑通 Table API + SQL 含 toChangelogStream 新写法

工程视角快速跑通 Flink SQL:提供现代依赖(不再使用 blink 规划器)、最小可运行示例(MRE)、Table API 与 SQL 互操作;输出使用 toChangelogStream 验证变更流。

大数据-129 Flink CEP详解:实时流式复杂事件处理(Complex Event Processing)全解析

Flink中专用于复杂事件流实时分析的核心组件,提供完整的模式匹配框架,支持基于事件时间(Event Time)的乱序处理与高性能NFA(非确定性有限自动机)匹配机制。它允许开发者通过Pattern API定义复杂的事件序列规则,如严格连续...

大数据-130 Flink CEP 详解 - 捕获超时事件提取全解析:从原理到完整实战代码教程 恶意登录案例实现

Flink CEP 超时事件提取是流处理中的关键环节,用于在模式匹配过程中捕获超过窗口时间(within)的部分匹配事件。通过 select()、flatSelect() 和 process() API,开发者可以同时处理成功匹配和超时事件...

大数据-127 Flink StateBackend详解:Memory、Fs、RocksDB 与 Operator State

ManagedOperatorState用于管理无键(non-keyed)状态,实现算子在故障恢复或扩缩容时的状态一致性。开发者可通过实现CheckpointedFunction接口来使用ManagedOperatorState...

大数据-128 Flink 并行度详解:从概念到最佳实践,一文读懂任务并行执行机制

Flink 中,并行度(Parallelism)是衡量任务并发处理能力的核心参数,决定了每个算子(Operator)可以同时运行的任务数量。合理设置并行度能显著提升作业的吞吐量与资源利用率。Flink 支持多层级的并行度配置,包括全局...

大数据-125 Flink 实时流计算中的动态逻辑更新:广播状态(Broadcast State)全解析

广播状态(Broadcast State)是 Apache Flink 中支持流式应用动态更新逻辑的重要机制,广泛应用于实时风控、用户行为分析、动态规则评估等场景。它允许低吞吐量的配置流(如规则、模型、参数)广播至所有并行任务实例...

大数据-126 Flink一文搞懂有状态计算:State Backend 工作原理与性能差异详解 核心原理与作用

状态存储(State Backend)是其实现有状态流计算的核心机制,决定了数据的可靠性、性能与容错性。Flink 提供三种内置存储后端:MemoryStateBackend、FsStateBackend 与 RocksDBStateBac...

大数据-123 Flink 并行度设置优先级讲解 原理、配置与最佳实践 从Kafka到HDFS的案例分析

一个Flink程序由多个Operator组成(Source、Transformation、Sink)。一个Operator由多个并行的Task(线程)来执行,一个Operator的并行Task(线程)数目就被称为该Operator(任务)并...

大数据-124 Flink State:Keyed State、Operator State、KeyGroups 详解

根据是否依赖中间状态,Flink 计算可分为有状态和无状态两种类型:无状态计算(Stateless Computation)如 Map、Filter、FlatMap 等操作,每条数据独立处理,执行效率高、可线性扩展;

大数据-50 Redis Java Lua 实现乐观锁、WATCH 与 SETNX 分布式锁

Redis 乐观锁实战:WATCH/MULTI/EXEC 机制详解,Lua 脚本实现原子操作,SETNX+EXPIRE 分布式锁从基础到 Redisson,Java 代码完整示例。

大数据-121 Flink 时间语义详解:EventTime、ProcessingTime、IngestionTime

Watermark 是一个特殊的标志,它用于告诉 Flink 数据流中事件的进展情况。简单来说,Watermark 是 Flink 中估计的"当前时间",表示所有早于该时间戳的事件都已经到达。Flink 认为当前时间在 Watermark...

大数据-122 Flink Watermark 全面解析:事件时间窗口、乱序处理与迟到数据完整指南

Flink 的 Watermark(水印)机制 是事件时间窗口计算中最核心的概念之一,用于处理 乱序事件(Out-of-Order Events) 并确保窗口准确触发。它通过定义系统认为"之前事件已全部到达"的时间点,来决定窗口计算的时机。

大数据-119 Flink 窗口(Window)全解析:Tumbling、Sliding、Session

Flink的Window窗口机制是流处理与批处理统一架构的核心桥梁。Flink将批处理视为流处理的特例,通过时间窗口(Tumbling、Sliding、Session)和计数窗口将无限流切分为有限数据集。

大数据-120 Flink滑动窗口(Sliding Window)详解:原理、应用场景与实现示例

滑动窗口(Sliding Window)是Apache Flink流处理中的核心机制之一,比固定窗口更灵活,广泛应用于实时监控、异常检测、趋势分析和用户行为统计等场景。滑动窗口由两个关键参数组成:

大数据-117 Flink JDBC Sink 详细解析:MySQL 实时写入、批处理优化与最佳实践

JDBC Sink 是最常用的数据输出组件之一,常用于将流处理与批处理结果写入 MySQL、PostgreSQL、Oracle 等关系型数据库。通过 JdbcSink.sink() 方法,开发者可以方便地实现 INSERT/UPDATE/U...

大数据-118 Flink 批处理 DataSet API 全面解析:应用场景、代码示例与优化机制

Flink 的 DataSet API 是批处理的核心编程接口,专为处理静态、有限数据集设计,支持 TB 级甚至 PB 级大数据分析。相比 DataStream API 的流处理,DataSet API 聚焦于离线批处理,具备延迟执行...

大数据-115 Flink DataStream Transformation:Map、FlatMap、Filter 与聚合算子

Flink 针对 DataStream 提供了丰富的算子,支持数据流在不同场景下的灵活处理。常见的算子包括 Map、FlatMap 和 Filter,用于元素转换、拆分与条件筛选;KeyBy 和 Reduce/Fold/Aggregatio...

大数据-116 Flink Sink 使用指南:类型、容错语义与应用场景

Flink 的 Sink 是数据流处理的最终输出端,用于将处理结果写入外部系统或存储介质。它是流式应用的终点,决定数据如何被保存、传输或消费。

大数据-113 Flink 源算子详解:非并行源(Non-Parallel Source)的原理与应用场景

非并行源(Non-Parallel Source)是Flink中并行度固定为1的源操作,无论集群规模如何,只能在单一实例中运行,确保任务按顺序处理。

大数据-114 Flink DataStreamAPI 从 SourceFunction 到 RichSourceFunction

RichSourceFunction 和 RichParallelSourceFunction 是功能增强型的源函数,适用于需要复杂逻辑和资源管理的场景。相比基础的 SourceFunction,它们提供了更完整的生命周期方法(open...

大数据-111 Flink 安装部署 On YARN 部署全流程详解:环境变量、配置与资源申请

在 YARN 模式下部署 Flink 需要完成一系列环境配置和集群管理操作。首先,在各节点配置环境变量,包括 HADOOPCONFDIR、YARNCONFDIR 和 HADOOP_CLASSPATH,并在 profile 中加入 Hadoo...

大数据-112 Flink DataStream API:数据源、转换与输出 文件、Socket 到 Kafka 实战

DataSource、Transformation 和 Sink。DataSource 提供多样化的数据输入方式,包括文件系统、消息队列、数据库及自定义数据源;Transformation 是计算的核心环节,支持 Map、FlatMap...

大数据-43 Redis Lua 脚本:EVAL、redis.call 与原子操作实战

系统讲解 Redis Lua 脚本的 EVAL 命令语法、redis.call 与 redis.pcall 的区别,以及原子计数器、CAS、批量操作等四个典型实战案例。

大数据-37 HBase Java API 增删改查完整代码

使用 HBase Java Client API 实现建表、插入、删除、Get 查询、全表扫描与范围扫描,附完整 Maven 依赖和可运行代码示例。

大数据-32 ZooKeeper 分布式锁 Java 实现详解

基于 ZooKeeper 临时顺序节点实现分布式锁,附完整 Java 代码,涵盖锁竞争、前驱节点监听、CountDownLatch 同步和递归重试的完整流程。

大数据-29 ZooKeeper Watcher 原理与命令行实践指南

从客户端、WatcherManager 到 ZooKeeper 服务端,完整解析 Watcher 的注册-触发-通知流程,并通过 zkCli 命令行实操演示节点的增删查改与监听。

大数据-30 ZooKeeper Java API 实战:节点增删改查与监听

使用 ZkClient 库通过 Java 代码操作 ZooKeeper,实现 Session 建立、持久节点增删、子节点变更监听与数据变更监听的完整实战示例。

大数据-11 MapReduce JOIN 四种实现策略

深入讲解 MapReduce 中 Reduce-Side Join、Map-Side Join、Semi-Join 和 Bloom Join 四种 JOIN 策略的原理与 Java 实现,分析各自适用场景和性能特点。

大数据-09 HDFS Java Client 实战:上传下载文件、目录扫描

使用 Hadoop HDFS Java Client API 进行文件操作:Maven 依赖配置、FileSystem/Path/Configuration 核心类,实现文件上传、下载、删除、列表扫描和进度条显示。

大数据-10 Java 实现 MapReduce WordCount 完整代码

从零实现 Hadoop MapReduce WordCount:Hadoop 序列化机制详解,编写 Mapper、Reducer、Driver 三大组件,Maven 项目配置,本地与集群运行完整代码。

大数据-01 基础环境搭建:Hadoop 集群

在3台云服务器(2C4G配置)上搭建Hadoop集群环境的详细教程,包含HDFS、MapReduce、YARN组件介绍,Java和Hadoop环境配置步骤。