语境
软件工程具有软件设计模式(例如GoF),它描述了常见编码问题的解决方案 - 通常在代码级别;同样,也有架构模式(例如Fowler)来处理一般的系统架构(虽然这些架构模式处理纯代码之外的考虑因素,但它们似乎往往更多地关注软件工程问题而不是基础设施问题)。
我还注意到像微软这样的平台提供商推出了“云设计模式”。
基础设施即代码 (IoC) 是进一步的复杂因素,其中软件/编码级别的考虑开始变得重要。
具体问题
在基础设施领域,面向基础设施的模式真的存在吗?如果存在,那么是否有任何相对权威的、为基础设施社区广泛理解的模式集合?或者你只是“借用”系统架构模式?
顺便说一句,假设上述问题的答案大致是“是”,那么云基础设施模式是否被视为这些模式的一部分或扩展 - 或者被视为单独的集合?
供参考
我是一名解决方案架构师,有软件开发背景,而不是基础设施背景。当我说“基础设施”时,我指的是网络、物理和虚拟服务器及其部署架构、容量和卷规划、服务器和网络安全等 - 基本上是“软件”架构师可能依赖但自己不明确设计的任何内容。
更新 - 定义
为了让稍后阅读本文的人更清楚:
“模式”是一个广义的术语,并不是特定于学科的……
在软件工程中,软件设计模式是针对常见代码级问题的特定解决方案(很像配方)。这些类型的模式通常与技术无关,但可能特定于编程语言范式(例如面向对象与替代)。
(系统/应用)架构模式,涵盖常见的系统级架构和设计问题,包括:内部组件结构、组件级角色和职责、跨切方面(如身份验证和授权)、错误处理和可观察性、数据持久性。