用最慢的存储,造最等不起的日志
📋 总体概括
Cloudflare公开测试K2,把持久日志直接架在R2对象存储上,宣称produce p99约1秒,实测端到端7.5秒。本文拆解其架构逻辑、延迟现实、竞争定位与收发同价账本:对象存储正在成为数据基础设施新地基,而扇出成本是新架构最容易被忽略的代价。
📄 正文
2026 年 10 月,Cloudflare 把事件流服务 K2 丢进了公开测试:没有集群规划,没有 Broker 调优,一条持久日志直接架在对象存储 R2 上。官方宣称 produce p99 约 1 秒,有测试者实测端到端 7.5 秒。
我的判断很直接:这不是又多了一个消息队列,而是数据基础设施的存储地基正在整体搬家。上一次被撬的是数据仓库,这一次轮到了日志——最古老、也最"等不起"的那个数据原语。
📈 K2 是什么:把日志摁进对象存储
复杂度不会消失,只会被转移。K2 选择的转移方式,是把"运维一个集群"换成"调用一个 API"。
按 InfoQ 作者 Steef-Jan Wiggers 的报道,K2 是一个无服务器(serverless)事件流服务,核心是在 R2 对象存储上实现一条持久日志(durable log),目前处于公开测试阶段。Cloudflare 给出的口径是:produce 延迟 p99 约 1 秒。计费上,消费与生产同价,均按 GB 计费。
做过实时管道的人都清楚,过去上线一条事件流要过几道关:容量评审、分区规划、磁盘水位、扩容演练。集群本身就是一个需要被伺候的"宠物"。而 K2 把这一整套东西折叠成了一个端点。
这张图就是 K2 的产品哲学:接入层无状态、可弹性,存储层就是 R2 本身。没有独立 Broker 集群,没有本地盘,日志不再是"集群里的数据",而是"对象存储上的对象序列"。
产业逻辑也在这里:当一条日志可以直接住在对象存储上,"消息中间件"这个品类的故事就得重讲了——它不再卖集群,只能卖 API、卖账单、卖延迟。
🔀 存算分离的最后一公里
消息中间件的溢价,一半来自那块专用存储。
我自己维护过 Kafka 集群,最痛苦的从来不是 API,而是底下的存储:分区再均衡像走钢丝,磁盘水位天天盯。后来业界搞分层存储(Tiered Storage),本质是给专用集群打补丁——热数据留本地,冷数据下沉对象存储。补丁能续命,但两套存储、两条数据路径的复杂度一点没少。
K2 的思路是跳过补丁,直接把日志架在对象存储上。架构上说得通:日志是 append-only、顺序读写的数据结构,与对象存储"一次写、多次读"的特性天然咬合。更关键的是数据的归宿——今天不管你用 Snowflake 还是 Iceberg,数据的落脚点基本都是对象存储。日志与其最后再"倒一手"进湖仓,不如原生就住在那儿。
| 维度 | K2 | 传统自建集群 |
|---|---|---|
| 存储底座 | R2 对象存储 | 本地盘/专用文件系统 |
| 运维形态 | 无服务器 API | 自管集群、分区规划 |
| 计费模型 | 按 GB,收发同价 | 按集群峰值规格 |
| 延迟宣称 | p99 约 1 秒 | 毫秒级 |
| 成熟度 | 公开测试 | 十年沉淀,成熟 |
表里最值得琢磨的是首尾两行:存储底座换了,延迟和成熟度还欠着账。这正是下一节要说的。
圈子里私下流传一句话:对象存储正在"吃掉"一切中间件的存储层。这话刺耳,但方向大概率是对的——先吃数仓,再吃湖,现在轮到流。
⚠️ 7.5 秒实测:口径与现实之间的鸿沟
宣称的 1 秒和实测的 7.5 秒之间,隔着一条叫"工程化"的鸿沟。
故事发生在 InfoQ 那篇报道的讨论区:有测试者给出实测数据,端到端 p99 达 7.5 秒。评论区有以团队身份回复的人士承认,这个数字比预期更高。这种坦白不多见,但恰恰说明产品还在公测、口径还在打磨。
把链路拆开就清楚了。所谓 7.5 秒是端到端的:生产端写入、日志落存、消费端拉取,每一跳都有开销。对象存储单次操作的延迟量级,决定了这套架构的延迟下限——它天生不为微秒级访问设计。官方宣称的 1 秒只覆盖 produce 一跳,本身自洽;麻烦在于,用户的体感永远是端到端。
💡 我的判断:秒级延迟覆盖得住的场景——CDC 入湖、日志归档、IoT 采集、离线告警、湖仓数据回流——大多是"数据要到位,不必马上到"。覆盖不住的是交易链路、实时风控、指标监控这类毫秒级敏感管道。这一点,不因 serverless 的光环而改变。
所以建议很务实:现在别把任何延迟敏感的东西迁过去,但值得放进技术雷达观察名单,盯一个指标——端到端 p99 的收敛速度。公测到正式发布的这段曲线,比任何发布会口径都诚实。
🗺️ 格局重排:这次轮到谁紧张
存储在哪,话语权就在哪。
事件流市场长期由几股势力把守:Confluent 的商业化 Kafka、AWS 的 Kinesis、架构激进的 Apache Pulsar,以及 Redpanda 这类新秀。有意思的是,这几年各家都在做同一个动作——往对象存储上靠,分层存储成了标配功能。这等于集体承认:对象存储才是数据的地基。K2 只是把"过渡形态"跳过去了。
用四象限图看当前位置:
x 轴是建设与运维的技术门槛,y 轴是当前商业价值。K2 此刻落在左下角:用户门槛低(无服务器),价值兑现还早(公测期)。但象限位置是静态的,迁移方向才是关键——如果对象原生架构能把成本曲线压得足够低,左下角的玩家有动能向右上走,数据库领域已经发生过一轮。
存储层的迁移路线,脉络其实非常清楚:
Kafka开源普及
本地盘承载分区
分层存储流行
热冷数据分层下沉
K2公开测试
日志直接架在R2上
三步走:专用集群、分层补丁、对象原生。每走一步,专用存储的比例都在下降。据多位接近流处理厂商的人士观察,这条路线图在业内基本是共识,分歧只在节奏。
💰 收发同价的账本:谁该现在就认真看它
Serverless 的价值从来不是绝对便宜,而是账单可预期。
K2 的计费规则很简洁:consume 与 produce 同价,均按每 GB 计费。背后的经济学是——传统集群的成本模型是"峰值容量 × 时间",为了扛住每年那几次流量尖峰,平时大量资源在空转;按 GB 计费则意味着账单只跟数据量走,与集群规格无关。突发流量不再是成本事故,而是业务波动本身。
🧾 但有一笔账必须算清楚:既然消费按 GB 收费,扇出(fan-out)就成了新的成本变量。一条日志被五个下游订阅,消费侧账单就是五份;而在传统集群里,同一份数据被本地多次消费,边际成本接近于零。这是新架构的真实代价:它把集群的固定成本,换成了随扇出倍增的流量成本。
第一批试水者的画像由此清晰:低扇出、延迟不敏感、数据终点就是湖仓的管道——入湖 CDC、埋点归档、边缘事件汇聚。据不少做 IoT 与日志采集的团队私下反馈,秒级端到端对这类场景完全够用。反过来,高扇出的消息总线场景,这本账未必划算。
🧭 小结
K2 还在公测,7.5 秒的实测数字提醒所有人:新地基不是免费的午餐。但方向足够清晰——对象存储正在成为数据基础设施的公共底座,日志是最后一块、也是最难啃的一块。
给架构师的行动建议:把对象原生的流服务纳入技术雷达,先在入湖、归档管道上小规模试水,顺手把扇出成本模型算清楚。下一场仗不是"能不能用",而是延迟下限还能压到多少——那一秒之差,决定的是品类的边界。
本文由本站 AI 辅助聚合生成,原始来源如下: