饮墨

子安饮墨馀三斗,留与卿儿作赋来

分类目录归档:aws

AI Agent 生产环境 Token 成本砍半:语义缓存 + Prompt Cache + 智能路由 3 步实战

4 views

痛点

AI Agent 上线后,Token 账单往往是最大的"惊喜"。一个中等规模的客服 Agent,日均处理 5000 次对话,每次对话平均消耗 4000 tokens,按 Claude/GPT-4 级别模型计算,月费轻松突破 $3000+。更扎心的是——70% 以上的请求存在高度相似性,重复为相同问题付费。

真实场景:某 SaaS 平台的运维 Agent,处理告警自动诊断。80% 的告警是同类问题(CPU 高、磁盘满、OOM),每次都从头推理,token 白白烧掉。

方案

三层优化策略,叠加使用可降低 50-70% 的 Token 开销:

  1. 语义缓存(Semantic Cache)—...

Read more

DragonflyDB 实战:单节点多线程替代 Redis Cluster,吞吐提升 25 倍

6 views

痛点

业务日活突破千万,Redis 单线程瓶颈暴露无遗:QPS 从 10 万飙到 50 万后,单实例 CPU 打满,只能靠 Redis Cluster 横向扩展。然而 Cluster 模式带来的运维代价不小——数据迁移 slot、客户端 MOVED/ASK 重定向、跨 slot 事务限制、节点故障时的 failover 抖动,6 节点起步的资源开销也让成本翻了 3 倍。

如果有一款 完全兼容 Redis 协议 的内存数据库,单节点就能吃满多核 CPU、扛住百万 QPS,运维复杂度直降一个量级——这就是 DragonflyDB 的定位。

方案:DragonflyDB 核心架构

Dragon...

Read more

Talos Linux 实战:不可变操作系统让 Kubernetes 节点管理告别 SSH

9 views

痛点

运维 Kubernetes 集群,节点层面最头疼的三件事:

  1. 配置漂移 — 某个节点被人手动装了包、改了内核参数,排查问题时才发现和其他节点不一致
  2. 安全攻击面大 — 每个节点跑着 SSH、systemd 服务、包管理器,一旦容器逃逸就能拿到完整 shell
  3. 升级维护成本高 — OS 补丁、内核升级要逐台操作,滚动更新流程复杂且容易出错

传统方案是用 Ansible/Cloud-Init 做配置收敛,但本质上还是"可变基础设施"。节点跑久了,谁也不敢保证状态一致。

Talos Linux 的解法很彻底:去掉 SSH、去掉 shell、去掉包管理器,整个 OS 只通过 API 管理,...

Read more

Terragrunt 实战:3 个技巧让大规模 Terraform 代码量减少 60%

36 views

痛点:Terraform 项目膨胀后的维护噩梦

当你的 Terraform 项目从 3 个环境扩展到 10+ 个 AWS 账户、每个账户 20+ 个模块时,你会遇到这些问题:

  1. 代码重复爆炸 — 每个环境都复制一份 backend.tfprovider.tf,改一处要改十几个文件
  2. State 管理混乱 — 手动维护几十个 S3 backend 配置,bucket/key 拼写错误导致 state 丢失
  3. 依赖关系不明 — VPC 模块改了 CIDR,下游 EKS/RDS 模块不知道要重新 apply

terraform -chdir 和 workspaces 能解决部分问题,但面对多账...

Read more

Qdrant 向量数据库生产级集群部署:从单机到高可用的完整实践

79 views

痛点

AI 应用落地后,向量检索是绕不过的核心环节。pgvector 适合轻量场景,但当向量数据量超过千万级、QPS 要求 > 1000、需要多租户隔离时,你需要一个专用的向量数据库。

Qdrant 是当前最活跃的开源向量数据库之一(Rust 编写,性能优异),支持分布式集群、丰富的过滤条件、多向量存储。问题在于:从 Docker 单机跑通到生产集群稳定运行,中间有大量避坑细节

本文给出从 0 到生产就绪的完整路径。

方案概览

维度 选型/配置
部署形态 Kubernetes StatefulSet,3 节点 Raft 集群
存储 NVMe SSD(IOPS 敏...

Read more

用 gh-ost 在线改造 AWS Aurora 6000 万行大表:一次生产实战复盘

60 views

痛点

某生产 Aurora MySQL 集群上有两张日历相关的大表,需要把两个 varchar(255) 字段扩展到 varchar(500)。看似只是一条 ALTER TABLE MODIFY COLUMN,但这两张表分别是 6000 万行 / 37GB3500 万行 / 28GB,而且集群还被另一套业务共用。

如果直接执行原生 ALTER TABLE,会踩到 MySQL 的一个经典陷阱:

InnoDB 的 MODIFY COLUMN 在涉及字符集 / COLLATE 变更时,会强制走 ALGORITHM=COPY(全表重建),即使你显式写 ALGORITHM=INPLACE ...

Read more

Istio Ambient Mesh 实战:告别 Sidecar,服务网格轻量化落地

58 views

痛点:Sidecar 模式的运维之痛

Istio 从诞生起就以 Sidecar(Envoy)注入为核心架构。每个 Pod 旁边跑一个 Envoy 代理,虽然实现了透明流量劫持,但在生产中带来了真实的运维负担:

  • 资源开销大:每个 Pod 多吃 100-200MB 内存、0.1-0.5 vCPU,千级 Pod 集群下额外资源成本可观
  • 升级复杂:Sidecar 版本与数据面绑定,升级需重启所有注入 Pod,灰度困难
  • 启动延迟:Pod 启动时需等待 Sidecar Ready,init container 注入 iptables 规则增加 2-5s 启动时间
  • HBONE 兼容性差:某些 Job...

Read more

Grafana Pyroscope 持续性能剖析:Kubernetes 生产环境落地实战

57 views

痛点:监控告警之后,性能瓶颈定位的最后一公里

你有 Prometheus 监控 CPU/内存指标,有 Tempo 追踪请求链路,有 Loki 聚合日志——但当 P99 延迟飙升时,你知道哪个服务慢了,却不知道慢在哪一行代码

传统做法是:SSH 进容器 → 手动 pprof / perf → 抓一次快照 → 本地分析。问题显而易见:

  • 故障窗口短,手动操作来不及
  • 没有历史基线,无法对比「正常时段 vs 异常时段」
  • 多实例 Pod 不知道该抓哪个

持续剖析(Continuous Profiling) 解决的就是这个问题:7×24 自动采集每个进程的 CPU、内存分配、Goroutine ...

Read more

AI Agent 安全防护实战:Prompt 注入防御与权限隔离架构

61 views

痛点

AI Agent 已从实验走向生产。当 Agent 能调用工具、访问数据库、执行命令时,安全边界被彻底打破——一条精心构造的用户输入就能让 Agent 执行未授权操作。2025 年 OWASP Top 10 for LLM Applications 将 Prompt Injection 列为首要威胁,而多数团队的 Agent 部署仍处于"裸奔"状态:无输入过滤、无权限分层、无操作审计。

真实案例:某企业内部 Agent 集成了 SQL 查询工具,攻击者通过间接 Prompt 注入(将恶意指令嵌入外部文档),让 Agent 执行了 DROP TABLE 操作。根因:Agent 对工具...

Read more

Redis Cluster 热 Key 问题排查与优化实战:从发现到根治

54 views

痛点

线上 Redis Cluster 突然出现单节点 CPU 飙升到 90%+,其他节点负载却很低。业务端大量超时报错,监控告警不断。排查发现:某个 Key 的 QPS 占该节点总请求的 60% 以上 —— 典型的热 Key(Hot Key)问题。

热 Key 是 Redis Cluster 架构下最常见的性能瓶颈之一。由于 Cluster 按 slot 分片,同一个 Key 只会落在一个节点上,无论集群规模多大,单 Key 的流量天花板就是单节点的处理能力。秒杀活动的库存 Key、热门商品详情缓存、全局计数器 —— 这些场景都是热 Key 的重灾区。

方案概述

解决热 Key 问题的...

Read more