标签

架构设计

mimalloc:把多线程内存分配从"抢一把锁"变成"各管各的"

来源:oschina.net 25
内存分配器大概是系统软件里最沉默的角色——你天天用它,却几乎不会注意到它,直到并发压力把全局锁变成瓶颈。微软研究院的 Daan Leijen 花了数年时间打磨的 mimalloc,给出的核心判断非常干脆:传统分配器让所有线程抢同一批内存,本身就是设计错误。 把分配变成线程本地的事,再在必要时刻做轻量级的全局协调,性能和可扩展性就自然跟上了。 经典分配器...

moon v2.0:WASM 插件化工具链与全新 CLI,monorepo 构建再进化

来源:infoq.com 21
monorepo 工具 moon 从 v1 到 v2 走了整整一个大版本周期,这次更新不是小修小补——工具链从硬编码变成了 WASM 插件架构,配置格式从单一 YAML 扩展到 JSON 和 TOML,CLI 命令结构全面重组,任务继承和 Docker 集成也做了大幅改造。如果你在用 moon 管 monorepo,v2 是一次架构层面的迁移;如果还没...

LLM 正在拆掉云原生架构的地基

来源:oschina.net 18
2010 年前后,整个行业达成了一个共识:计算无状态,状态归数据库。应用服务器随便加,负载均衡器随便转发,请求落到哪台机器都一样——因为真相只存在于数据库里。这套范式统治了二十年,Kubernetes、微服务、Serverless 全是它的产物。 但当你把一个 LLM 接进系统,这根支柱开始晃了。 云原生的核心等式很简单: 想扩容?垂直升级数据库(换更...

Python 增量 GC 回滚:一次"更好的暂停时间"换来更大的内存代价

来源:oschina.net 12
Python 3.14 刚把增量垃圾回收器推上舞台,还没站稳,就被生产环境的内存压力报告拉了下来。核心开发者 Hugo van Kemenade 宣布,3.14 和 3.15 将双双回滚至 3.13 的代际式 GC——一次教科书级的"理论收益 vs 现实代价"决策。 Python 3.13 及之前使用的是三代式(generational)GC:第 0 ...

vivo 万台规模 YARN 集群升级实战:如何平滑跨越调度器性能瓶颈

来源:my.oschina.net 23
当集群规模逼近万台,YARN 已经不再是单纯的任务调度器,而是整个大数据体系的神经中枢。任何一次微小的版本迭代,在万台规模的放大镜下,都可能演变成一场波及全业务线的风暴。vivo 在大数据架构演进的过程中,直面了这台巨型引擎的升级深水区——从调度器锁竞争到心跳风暴,从状态存储兼容性到灰度回滚的走钢丝。这篇文章将拆解 vivo 万台 YARN 集群升级的...

OneVL:用一个模型干完视觉四大任务,小米的开源思路

来源:oschina.net 30
视觉-语言模型这几年越做越大,但一个尴尬的现实是:你想让它同时干识别、检测、问答、分割四件事,最常见的做法是给每个任务塞一个"专家头"。推理时四套参数轮番上阵,GPU 显存吃满,延迟翻倍。小米研究院刚开源的 OneVL,核心命题很简单——能不能一套权重、一次推理,把这四件事都搞定? 现有主流方案基本走的是 MoE(Mixture of Experts)...

用 Lambda 打通内网:将 CloudWatch 指标推送到 VPC 内的 OpenTelemetry Collector

来源:aws.amazon.com 15
AWS CloudWatch 是公有云监控的标配,但很多企业的可观测性底座是部署在 VPC 内网的 OpenTelemetry (OTel) Collector。CloudWatch 默认没有内网推送通道,直接让内网 Collector 拉取公有云 API 既不安全又受带宽与 API 限流制约。本文拆解一种实战方案:用 AWS Lambda 做格式转换...

Airbnb 的上下文感知身份模型:如何让社交功能与隐私共存

来源:infoq.com 13
Airbnb 的 Experiences 业务让用户从"住客"变成了"活动参与者"——和陌生人一起做饭、冲浪、逛市集。社交属性一旦打开,身份暴露的风险也跟着来了:一个房东在住宿场景下的真实姓名、电话、住址,不应该自动出现在她参加陶艺体验时的公开档案里。Airbnb 的工程团队因此重构了整个身份系统,核心思路是:全局身份只存在于内部,对外可见的档案按上下...

JDK 27 结构化并发异常处理收紧:JEP 533 带来了什么变化

来源:infoq.com 14
结构化并发(Structured Concurrency)从 JEP 453 进入 JDK 21 以来,一直在打磨细节。JEP 533 在 JDK 27 中进入集成状态,核心改动集中在异常处理和类型安全——具体来说,引入了新的 类型,更新了 接口,并新增了 方法的重载,让配置更顺手。这些变化不是大刀阔斧的重写,而是把之前模糊的边界收紧,让异常流变得可预...

看起来最简单的功能,往往最难:从 Meta Friend Bubbles 看社交推荐的规模化工程

来源:engineering.fb.com 24
你刷 Reels 时看到一个小气泡,标注着"你的朋友也看了这条视频"——这个交互看起来毫不起眼,但背后牵动的是数十亿用户的关系图谱、实时观看信号和推荐排序的交汇点。Meta 最近在工程博客上聊了 Friend Bubbles 这个功能的构建过程,核心信息很明确:越是"看起来简单"的产品功能,越可能藏着最深的工程难题。 表面逻辑只有一行:查出朋友看过的 ...