亚马逊Prime Video用Rust和WebAssembly重构客厅设备UI
2025-04-12

亚马逊工程师分享了他们如何使用Rust和WebAssembly重构Prime Video客厅设备UI的历程。面对客厅设备(机顶盒、游戏机等)性能差异巨大、硬件能力参差不齐、原生代码更新困难等挑战,他们采用了一种混合架构:使用Rust和WebAssembly构建低层UI引擎,业务逻辑代码则使用React和JavaScript编写,并通过消息总线进行通信。为了进一步提升性能和响应速度,他们最终将UI层完全迁移到Rust,并开发了一个新的Rust UI SDK。新的架构显著降低了输入延迟,并实现了以前无法实现的动画效果。虽然WebAssembly生态系统仍处于发展阶段,存在一些挑战,例如panic处理,但整体结果令人满意,开发者效率也有所提高。
开发