Nitro’s
  • Tech
  • Android
  • Linux
  • Life
  • Travel
  • Github
  • About

Hello World

Nitro Hsu

26 Mar 2013

Yeah!

Gradle、Java、Kotlin版本关系

https://docs.gradle.org/current/userguide/compatibility.html The sections below describe Gradle’s compatibility with several integrations. Versions not listed here may or may not work. Java Runtime Gradle runs on the Java Virtual Machine (JVM), which is often provided by either a JDK or JRE. A JVM version
24 Mar 2026 2 min read

为什么SSE模式需要考虑代理的穿透情况

涉及到 SSE 连接的一个核心矛盾:SSE 是长连接,而 HTTP 基础设施默认假设连接是短暂的。 问题的根源在于:代理是为短请求-响应设计的,SSE 则是持久的单向流。两者在几个关键假设上正面冲突。 问题一:缓冲(最常见的坑) Nginx 默认开启 proxy_buffering,其逻辑是先把后端响应缓存在内存/磁盘里,等完整响应到达后再转给客户端——这对普通 API 是性能优化,对 SSE 则完全破坏了流式体验。用户会感知到"思考了很久,然后一次性输出全部文字"。 问题二:超时(idle timeout 与长连接) 这里有两个不同的超时机制叠加:proxy_read_timeout 是代理等待后端"下一个字节"的时限——LLM 在复杂推理时可能几秒内不产出任何
24 Mar 2026 3 min read

详细分析在大模型会话过程中使用的SSE模式

SSE(Server-Sent Events)是大模型流式输出的核心机制。下面从协议层到应用层做一次完整的分析。 一、为什么 LLM 选择 SSE 大模型推理的核心特性决定了它与 SSE 天然契合:token 是逐步生成的,整个响应可能耗时数秒到数十秒,而用户不可能等待完整响应再渲染。SSE 提供了一种极简的单向推送机制——服务器通过一条普通的 HTTP 连接持续写入数据,客户端实时消费,无需 WebSocket 的握手开销,也无需轮询的带宽浪费。 二、完整的请求-响应生命周期 三、Anthropic API 的事件类型体系 以 Claude API 为例,它定义了一套层次化的事件协议,粒度比 OpenAI 的 choices[0].delta 更细。完整事件顺序如下: message_start → content_block_
24 Mar 2026 4 min read
Nitro’s © 2026
Powered by Ghost