Tag
前言 在前面文章里我们已经熟悉了 Spring 容器普通 Bean 的生命周期:单例 Bean 的初始化、属性注入、afterPropertiesSet 等。 但在实际业务中,你可能遇到以下痛点: 应用启动后想立即开启某些服务 容器关闭前要优雅停止正在处理的请求 不知道哪些组件会在容器刷新完成后自动启动。哪些需要手动控制 这些场景正是 Spring 容器级生命周期接口——Lifecycle
查看更多 2026-08-05
JVM异常处理机制源码级剖析 从字节码层面来看,athrow指令 throw 语句在编译后对应一条JVM字节码指令athrow 。从其执行过程来看, 从操作数栈弹出一个对象引用。 如果该引用为null JVM会自动创建一个NullPointerException 并抛出——这就是为什么throw null; 会得到NPE而不是未定义行为。 清空当前帧的操作数栈,只保留异常引用。
查看更多 2026-08-03
一、为什么需要事件机制 痛点: 业务代码高度耦合。新增副作用需要改动主要业务类,副作用失败会影响主流程,单元测试必须 mock 所有副作用依赖。 先看一个没有事件的代码: @Service public class OrderService { @Autowired private SmsService smsService;@Autowired private PointService
查看更多 2026-08-03
从 2020 年到 2024 年,编码 Agent 爆发了三款代表性项目:OpenAI 用 Rust 写的 Codex CLI、Anthropic 的 Claude Code。还有 earendil‑works 用纯 TypeScript 写的 Pi Agent。这三款都在终端跑一个能读代码、写文件、输入命令的 AI Agent,但它们在底层架构上的取舍截然不同。 使用者最常遇到的痛点 模型锁定
查看更多 2026-08-03
Dify RAG Pipeline 源码拆解:工业级 RAG 的 个设计取舍 架构概览 很多人知道 RAG 的流程是 chunk → embed → retrieve → rerank。但真正打开一个万星项目的源码,才发现每一步都有值得琢磨的取舍。 Dify 的 RAG 分为两条独立链路。由不同的上层调用方编排: 离线索引 提取纯文本 → 清洗 → 递归分片 → 索引处理→ embedding
查看更多 2026-08-02
最近关于 Agent 自进化的讨论越来越多。今天我们来看论文「MOSS: Self-Evolution through Source-Level Rewriting in Autonomous Agent Systems」。论文中提出了一个名为 MOSS 的源码级自进化程序,面向生产级 Agent 基座。尝试把 Agent 的自我改进范围从 prompt、skill、memory 等文本层
查看更多 2026-08-02
再看开始之前,API 测试工具推荐 这篇文章涉及大量 HTTP 请求示例。建议配合 API 客户端工具边看边试。 推荐使用 Bruno —— 一款开源的 API 客户端。 相比 Postman,Bruno 将请求集合保存为本地纯文这篇文章件。天然支持 Git 版本管理,无需注册账号就可以使用。再看主要特点, 本地优先 请求数据保存在本地文件程序,不上传到云端 Git 友好 请求配置是纯文本
查看更多 2026-08-01
在 Android 开发中。面对网络请求需求时大多数人会直接选用 OkHttp,却忽视了更易用的封装层——Retrofit。很多新人在阅读 Retrofit 源码时会遇到以下痛点: 源码体量大。结构复杂 ——不知道从哪个入口开始,看得眼花缭乱。 动态代理和注解解析难以捉摸 ——看不清楚接口方法到底是怎么被转化为网络请求的。 今天聊聊围绕两个主要方向帮助你突破这些痛点: Retrofit 主流程
查看更多 2026-08-01
一:什么是Spring AI的ChatClient配置流程 这里面我们调用chatclient就指定了advisor。prompt,等属性,最终调用call方法获取请求,通过chatResponse返回一次AI调用的具体返回内容
查看更多 2026-07-23
详细说说 Element Plus 源码中 packages 目录下的各个子目录及其作用。Element Plus 采用 monorepo 管理。每个子包都有明确的职责,理解这些目录对改造或借鉴其结构很关键。 packages/ ├── components/ # 所有 UI 组件 ├── me-chalk/ # 样式程序 ├── hooks/ # 可复用的组合式 API ├──
查看更多 2026-07-23
Demand feedback