知识卡片

把分布式复杂性隐藏起来需要严格限定的编程模型

普通读书笔记卡 · 1805

内容

一般想对应用完全隐藏”这是分布式并发系统”是不可能的,但Darkstar发现MMO恰好例外:把编程模型限定成”反应式”——服务器端只写事件监听器,收到事件生成短生命周期任务处理,游戏程序员就能假装写单机单线程程序,多线程多机协调交给基础设施。这揭示通用取舍:隐藏底层复杂性越彻底,上层被允许做的事就越少。

参考来源

- 位置:《架构之美》第3章《伸缩性架构设计》3.2.1节《首要目标》(源文件:程序之美系列套装(6册)团队之美、项目管理之美、架构之美、数据之美、测试之美、安全之美/_epub-src/OEBPS/Text/part0116.xhtml) - 结论依据:原文明确"目标就是游戏程序员应该把该系统视为一台单机,运行着一个线程,所有允许部署到多线程和多计算机上的机制都应该由Darkstar项目的基础设施来考虑……我们试图实现的这种隐藏,其代价就是必需一种非常特别的、严格限制的编程模型"。 - 原始内容:目标就是游戏程序员应该把该系统视为一台单机,运行着一个线程,所有允许部署到多线程和多计算机上的机制都应该由Darkstar项目的基础设施来考虑……我们试图实现的这种隐藏,其代价就是必需一种非常特别的、严格限制的编程模型。