技术栈
下列名称来自字节开源、论文和火山引擎工程分享。同一能力可能有多代并存(Kafka 与 BMQ、Abase 1.0/2.0)。把它当成「这一层用哪类系统」,而不是某天的服务目录。
打电话 RPC
Kitex
记小本本 KV
Abase
谁关注谁
ByteGraph
猜你会看完
Monolith
传纸条
BMQ
做视频拷贝
BMF
L0 客户端 · 播放 / 预加载 / 埋点
L1 接入 · 网关 / CDN / 就近
L2 业务 · 用户 / 社交 / 搜索
L3 推荐 · 召回-粗排-精排-重排
L4 媒体 · 转码 / 审核 / 多码率
L5 数据 · 队列 / Flink / 训练
L6 存储 · KV / 图 / 表 / 对象
端与接入
| 能力 | 技术 | 工程要点 |
|---|---|---|
| 移动端网络 | MNet | 统一移动网络库:协议、弱网、安全;API 走动态加速。 |
| 流量调度 | DNS / GTM / TrafficRoute | GEO + ISP 就近、同城多活、异地切流。 |
| 边缘 | 融合 CDN · DCDN · 边缘计算 | 点播静态加速,API 动态加速,直播边缘推拉流。 |
| 入口 | L4/L7 LB · API 网关 | TLS、鉴权、限流、单元纠偏。媒体字节不走 JSON 通道。 |
微服务通信
| 能力 | 技术 | 工程要点 |
|---|---|---|
| RPC | Kitex + Thrift / gRPC / TTHeader | CloudWeGo。公开:2018 约 7–8k 服务,2021-05 超 5 万。 |
| HTTP | Hertz | 网关与 REST。与 Kitex 共用发现、熔断、限流、重试。 |
| 治理 | Service Mesh + 框架切面 | 单元化路由、超时、Backup Request 切长尾。 |
| 序列化 | Protobuf · Thrift · Sonic JSON | 特征日志常用 PB;大 Topic 会裁 IDL 减 CPU。 |
推荐与检索
| 能力 | 技术 | 工程要点 |
|---|---|---|
| 在线学习 | Monolith(Worker–PS) | Cuckoo Hash embedding;训练 PS 分钟级增量同步 serving PS。 |
| 特征平台 | Darwin + Flink SQL/State | 窗口计数与序列;结果推进 KV。单作业状态公开到 60TB+。 |
| 向量召回 | ANN 向量库 | 双塔 user/item embedding 近邻检索。 |
| 倒排 / 热门 | 检索引擎 · 热池 KV | 关键词、音乐、话题;热门走单独召回路。 |
存储
| 能力 | 技术 | 工程要点 |
|---|---|---|
| 大容量 KV | Abase / Abase2 | 覆盖约 90% KV。兼容 Redis;2.0 无主多写 + CRDT。 |
| 强一致表 | ByteKV + ByteSQL | Range 分区;快照隔离事务与全局二级索引。 |
| 图 | ByteGraph | VLDB'22:百亿点、万亿边;大 V 用 edge-tree。 |
| 对象 / 缓存 | TOS · Redis | 源片与转码产物;Feed 与超热 Key 走内存缓存。 |
流、离线与媒体
| 能力 | 技术 | 工程要点 |
|---|---|---|
| 消息队列 | Kafka → BMQ | SoCC'24 存算分离;称迁移 99.76% Kafka 集群,成本约降 70%。 |
| 流计算 / 湖仓 | Flink · Hive / Hudi / Spark | 实时特征、样本拼接、离线训练与回溯。 |
| 转码 | BMF + 工作流 + 函数计算 | DAG 拆成转码/抽帧/增强,弹性队列调度。 |
| 直播 | RTMP/RTC + HTTP-FLV/HLS | 音视频走 CDN;弹幕礼物走独立扇出。 |