Skip to main content

16 posts tagged with "Production"

Production environment practices

View all tags

Envoy Proxy 生产实战:从反向代理、流量治理到高可用网关

· 40 min read
Rainy
雨落无声,代码成诗 —— 致力于技术与艺术的极致平衡

如果只看一份最小配置,Envoy 很像“另一个 Nginx”:监听一个端口,把请求转发给后端。但真正让 Envoy 成为云原生基础设施核心组件的,不是反向代理本身,而是它把路由、服务发现、负载均衡、故障隔离、安全和可观测性做成了一个可动态控制的数据平面。

这也是为什么 Envoy 会出现在 API Gateway、Kubernetes Gateway、Service Mesh、gRPC 基础设施、边缘代理和多集群流量治理中。

本文沿着一条生产链路展开:

  1. Envoy 到底解决什么问题,什么时候值得使用;
  2. 一个请求如何穿过 Listener、Filter、Route、Cluster 和 Endpoint;
  3. 怎样在本地跑起一个具有灰度路由、健康检查和异常摘除能力的代理;
  4. 怎样正确设计超时、重试、熔断、限流、鉴权和动态配置;
  5. 怎样在 Kubernetes 上用 Envoy Gateway 部署一个跨节点、可扩缩、可优雅升级的高可用入口;
  6. 上线前应该监控什么、演练什么,以及故障时如何定位。

本文基于 2026 年 9 月 4 日可用的官方资料与稳定版本:Envoy 1.39.1、Envoy Gateway 1.9.1。示例固定具体版本,避免生产环境无意间拉取变化中的 latest 镜像。

Go 高并发实战(4):背压、限流、隔离与重试风暴

· 8 min read
Rainy
雨落无声,代码成诗 —— 致力于技术与艺术的极致平衡

零拒绝不是稳定性目标。系统超过容量时,及时拒绝一部分请求,才能保护已接纳请求和故障恢复能力。

本期专门处理“流量大于处理能力”。我们把限速、限并发、队列、重试和熔断放进同一个反馈系统,而不是堆叠互不理解的中间件。

Go 高并发实战(6):压测、pprof、Trace 与线上事故排查

· 8 min read
Rainy
雨落无声,代码成诗 —— 致力于技术与艺术的极致平衡

排障不是随机抓火焰图,而是从用户影响和资源饱和提出假设,再选择能证伪它的证据。

本期完成系列闭环:建立压测方法、诊断端口和线上 Runbook,并复现 goroutine 泄漏、锁竞争、连接池耗尽与内存增长。

Go 高并发实战:从运行时到生产排障的 6 期路线

· 4 min read
Rainy
雨落无声,代码成诗 —— 致力于技术与艺术的极致平衡

目标不是背 API,而是建立一套能设计容量、约束资源、证明正确性并处理线上事故的并发工程方法。

这个系列围绕同一个“高扇出聚合服务”逐期演进:入口接收请求,并发访问数据库、缓存和 RPC,最后聚合结果。每一期都会保留可复现实验、错误版本、修复版本和验收指标。

Go 高并发任务经过调度队列、CPU 与网络节点的系列概念图

这张由 ImageGen 生成的系列概念图把高并发抽象成一条受控数据流:左侧大量青色任务先进入有界队列,中间由少量执行核心调度,右侧连接多个下游节点;少量橙色信号表示被监控和限制的过载,而不是任其扩散成雪崩。

Rust 高并发实战:从 Future 到生产排障的 6 期路线

· 4 min read
Rainy
雨落无声,代码成诗 —— 致力于技术与艺术的极致平衡

Rust 消灭了一大类内存数据竞争,但生产高并发仍需要主动设计容量、取消、背压、锁顺序和故障恢复。

这个系列使用 Rust + Tokio + Axum 构建与 Go 系列相同的高扇出聚合服务。相同的负载模型便于比较语言差异,文章重点则放在 Future、协作式调度、Send/Sync、取消安全和异步诊断。

Rust Future 经过唤醒环、Semaphore 通道与执行核心的系列概念图

这张由 ImageGen 生成的系列概念图以铜橙色任务胶囊表现 Future 状态,以环形轨道表现 reactor/waker,以透明闸门表现 Semaphore 与取消边界:任务只有在资源就绪并取得许可后,才进入右侧有限的执行核心。

WebRTC 全景实战 (15):Capstone — 生产级视频会议系统

· 16 min read
Rainy
雨落无声,代码成诗 —— 致力于技术与艺术的极致平衡

"站在巨人的肩膀上。" — WebRTC 标准化团队的共识(Curious — 历史

本系列最后一篇,整合 Ch0–Ch14 全部知识,构建可部署的生产级视频会议系统。Serge Lachapelle 在 Curious 访谈 中回顾:从 Marratech 的瑞典企业网实验,到 Google Meet 的全球部署,WebRTC 的终极形态不是某个协议细节,而是一套可运维、可扩展、可观测的实时通信系统

配套代码:examples/webrtc-lab/(全栈整合)

推荐先读

Capstone 以 LiveKit 为 SFU 参考实现。请先阅读本站 LiveKit 介绍,了解 Room/Participant/Track 模型、SDK 选型与 Agents 扩展路径。