知识卡片
分层架构支撑扩展的关键是稳定接口,而非简单分层
内容
分层架构支撑扩展,本质是”隔离关注点”——每层只处理本层逻辑,扩展某层其他层不受影响。但简单把相似模块归到一层不够,真正起作用的是层间要有稳定依赖接口。以 Linux 支持新文件系统为例,若只把 ext2、ext3 归为”文件系统层”,新增仍要改所有依赖方;只有抽象出稳定的 VFS 接口后,新增才只需适配 VFS。发散:分层只是表象,扩展性来自背后稳定不变的契约,没有契约,分再多层也只是形式主义。
参考来源
- 位置:《从0开始学架构》第38章《33|传统的可扩展架构模式:分层架构和SOA》(源文件:_epub-src/OEBPS/Text/part0037_split_001.html)
- 结论依据:原文明确"如果没有VFS,只是简单地将ext2、ext3、reiser等文件系统划为'文件系统层',那么这个分层是达不到支撑可扩展的目的的。因为增加一个新的文件系统后,所有基于文件系统的功能都要适配新的文件系统接口;而有了VFS后,只需要VFS适配新的文件系统接口,其他基于文件系统的功能是依赖VFS的,不会受到影响"。
- 原始内容:如果没有VFS,只是简单地将ext2、ext3、reiser等文件系统划为"文件系统层",那么这个分层是达不到支撑可扩展的目的的……而有了VFS后,只需要VFS适配新的文件系统接口,其他基于文件系统的功能是依赖VFS的,不会受到影响。