Java 中 SSE (Server-Sent Events) 流式输出与调用完全指南 在大模型(LLM)应用、实时通知、进度条推送等场景中,SSE(Server-Sent Events) 已经成为替代传统轮询和 WebSocket 的首选方案。它基于 HTTP 协议,实现简单,且天然支持防火墙和代理。 本文将手把手教你如何在 Java 中实现 SSE 服务端(流式输出)以及作为客户端 2026-07-16 Java 1 邬程峰
深入剖析Tomcat的底层架构与运行机制 要彻底搞懂 Tomcat 的实现原理,我们不能只停留在“它是个 Web 服务器”的表面,必须像剥洋葱一样,从宏观架构到微观组件,再到底层运行机制,一层一层地剖析。 下面我将以最细致的颗粒度,为你拆解 Tomcat 的核心实现。 第一层:宏观架构(Tomcat 的骨架) Tomcat 的核心设计思想可 2026-07-02 Java 8 邬程峰
基于 Redis SETNX 的后端审批防抖与幂等补偿机制 本文以钉钉卡片防抖改造为案例,系统梳理后端防抖、分布式锁、状态补偿三方面的知识体系。 一、问题背景:审批卡片多次点击导致状态不一致 1.1 现象 钉钉卡片上点击「同意/拒绝」后,审批流程正常推进,但卡片 UI 2026-06-30 方案 7 邬程峰
Java正则表达式 正则表达式的应用场景 最近(2025.8)在看《阿里巴巴 Java 开发手册》,其中有一条提到了正则表达式,这让我死去的记忆又复活了。 正则表达式(Regular Expressions)是一种强大的文本处理工具,广泛运用于对字符串、文本的操作场景,如搜索、编辑或者处理文本,它不是一种语言,而是一种 2026-04-29 Java 3 邬程峰
Java时间类型的演进:从Date到OffsetDateTime的深度解析 一、引言:时间的复杂性 时间,看似简单,实则是计算机科学中最棘手的问题之一。时区、夏令时、闰秒、日历系统...这些因素让时间处理变得异常复杂。Java作为企业级开发语言,其时间API的演进史,就是一部对时间本质理解不断深化的历史。 二、Java时间API的三代演进 2026-04-28 Java 4 邬程峰
钉钉互动卡片设计方案 1 概述 1.1 互动卡片是什么 钉钉互动卡片是一种 数据驱动、即时交互、多人协同 的轻量卡片,它能够将原本复杂的应用解构成一个个轻量级的卡片在钉钉的 各个场域 上运行。用户可以在卡片上完成互动协同,提高用户的沟通效率,同时帮助业务更好地触达用户。 1.2 互动卡片的特性 2026-04-22 方案 37 邬程峰
Spring定时任务设计方案 在 Spring Cloud 微服务架构中,多个实例部署同一个微服务时,若需要执行定时任务(如每天凌晨清理日志、同步数据等),必须确保同一时间只有一个实例执行该任务,否则会造成重复执行、数据不一致等问题。为实现这一点,可以借助 Redis 分布式锁 来协调多个实例。 下面将详细介绍如何在 Sprin 2026-04-17 Java 2 邬程峰
阿里巴巴 Java 开发手册 终极版 v1.3.0 阅读笔记 一、编程规范 (一)命名规范 1. 代码中的所有命名都不能以下划线或者美元符号开始或结尾,这点与 Python 很不相同 2. 类名使用 UpperCamelCase 风格,除了 DO / BO / DTO / VO / AO ;方法名、参数名、成员变量、局部变量的命名都统一使用 LowerCame 2026-04-03 Java 13 邬程峰