软件中的架构和基础设施有什么区别?

28

我刚刚发布了一个问题,询问MapR和Cloudera的架构之间的区别,并交替使用了“architecture”和“infrastructure”。这合适吗?

为了说明背景,MapR和Cloudera是Hadoop的发行版。它们都包含各种相互作用的守护进程。当我提到基础设施/架构时,我指的是这些守护进程、它们的动作以及它们之间的关系。

我要寻找的正确词汇是什么 - 架构还是基础设施?

这两者之间有什么区别?


https://simplicable.com/new/infrastructure-vs-architecture - Ray
2个回答

36

基础设施指实际构成系统的各个组件,而架构则描述这些组件之间的设计和关系。简而言之,一个系统建立在具有特定架构基础设施上。

例如:

许多多人游戏后端提供客户端-服务器基础设施

许多多人游戏后端使用客户端-服务器架构


5
我们可以说基础设施是资产,而架构则是使用这些资产的设计。 - Imam Bux

6

@MooseBoys提供了一个很好的概述,但对于那些想要更详细和示例的人:

计算机科学中的基础设施与架构

分类:CIS/IST

计算机科学(CS)、计算机信息科学(CIS)、信息技术(IT)、信息系统/服务和技术(IST)

基础设施和架构的定义

基础设施

描述构成系统的实际组件集合。

架构

描述组件以及它们之间关系的设计。

用例解释

基础设施

通常,企业IT实现建立在基础设施上。

架构

IT基础设施的架构首先需要IT敏捷性,随后解释基础设施的每个部分的关系、敏捷性、生命周期事件等,提供自动化、工作流程、敏捷性和各部分之间的关系。

IT敏捷性

"IT敏捷性",也称为"基础设施敏捷性",是设计IT架构时非常重要的一个衡量标准,关注如何高效响应IT基础设施对刺激的需求,同时提供根据业务需求快速扩展IT基础设施的能力。

在句子中使用基础设施和架构

基础设施

  • 许多多人在线游戏应用程序的后端提供了客户端-服务器基础设施
  • "我们为校园提供核心基础设施技术服务。" - (资源)
  • "混合云方法可能涉及公有云环境和私有云环境,基础设施(通过应用编程接口、中间件或容器实现)可以促进工作负载的可移植性。" - (资源)

架构

  • 许多多人游戏应用的后端使用客户端-服务器 架构
  • "这种可移植性是通过微服务实现的,这是一种编写软件的架构方法,其中应用程序被拆分为最小的组件,并相互独立。" (出处)
  • "为了使微服务架构作为一个功能齐全的云应用程序工作,服务必须不断通过消息从彼此请求数据。在应用程序中建立服务网格层简化了服务间通信,但微服务架构也可能需要与您的遗留应用程序和其他数据源集成。" — (出处)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接