ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

架构之美笔记

2026/8/29 12:22:30 拓冰建站 浏览量
架构之美笔记 层次结构, 最底层, 即第0层, 是所有不使用其他程序的程序. 一个层次中的程序应该比它上一个层次中的程序执行速度快9倍, 执行频率高9倍.我们曾提到,架构师玩的是折中的游戏。对于一组给定的功能需求和品质需求,没有唯一的正确架构和唯一的“正确答案”。不良的顶层设计所带来的问题也影响到了代码层面。问题会引起其他问题(参见Hunt和Davis[1999]中关于破窗理论的讨论)。因为没有通用的设计,也没有整体项目 “风格”,所以也没有人关心共同的编码标准、使用共同的库,或采用共同的惯例。组件、类和文件都没有命名惯例。甚至都没有共同的构建系统。 胶带、 Shell脚本、 Perl胶水与makefile和Visual Studio项目文件混在一起。编译这个怪物被视为一场复杂的成人仪式!“大都市”最微妙而又最严重的问题是重复 。由于没有清晰的设计,也不清楚功能应该处于的位置,所以轮子在整个代码集中不断重新发明。一些简单的东西,如通用算法和数据结构,在许多模块中重复出现,每种实现都带有自己的一些未知的缺陷和怪异的行为特征。更大范围的关注点,如外部通信和数据缓存,也实现了许多次。注意:架构有助于定位功能:添加功能、修改功能或修复缺陷。它为你提供了一个模板,让你将工作纳入到一张系统导航图中。注意:软件架构不是一成不变的。需要时就改变它 。要想做到可以修改,架构就必须保持简单。牺牲简单性的修改要抵制。游戏世界:在一般情况下, 如果有可能, 玩家就会作弊, 所以服务器必须是共享真实的最终来源.MMO和虚拟世界的数据访问模式也和企业中看到的情况有着很大的区别。企业中的一般经验法则是90%的数据访问都是只读的,大多数任务会读取大量数据,然后再改写少量数据。在MMO和虚拟世界的环境中,大多数任务只访问服务器上少量的状态数据,但在它们访问的数据中,大约一半会被改写。在线银行记录。在任何情况下,Web呈现的几乎所有面对用户的功能归根结底都是提供一个界面,访问站点专有的一组核心数据。这些信息构成了几乎所有网站的核心价值,不论它是由顶级员工研究团队创建的还是由世界各地的用户创建的。数据推动了用户喜欢的产品,所以架构师围绕数据创建了其余的传统 “n层”软件栈(逻辑层与显示层)。