IT 基础设施人员提到的“堆栈”是什么意思

IT 基础设施人员提到的“堆栈”是什么意思

有人能定义一下“堆栈”到底是什么吗?我知道这是一个行业术语,但它非常模糊。我指的是基础设施术语,而不是内存分配方面的“堆栈”。

答案1

它指的是构成您的服务所使用的技术:您的 Web 应用程序语言/框架依赖于(堆叠在)您的 Web 服务器上,该服务器与特定数据库类型通信(堆叠在)特定数据库类型,并且这些在特定操作系统上运行(堆叠在)特定操作系统上。因此,您可能拥有如下堆栈:

PHP
MySQL
A阿帕奇
大号Linux

组成 LAMP 堆栈,或者像这样:

CC#
年代SQL 服务器
 互联网信息服务
西视窗

组成 WISC(Windows)堆栈。其他常见的“堆栈”是 WIMP(Windows、IIS、MySql、PHP)和 WAMP(Windows、Apache、MySQL、PHP)。

这些只是其中的一些简单示例。它甚至还没有开始考虑 Oracle、Ruby、Java、Python 以及可能位于不同位置的众多其他选项。您可以在 Linux 上运行 MySql,作为在 Windows 中运行的 Web 应用程序的数据库,或者使用与您的应用程序层(甚至可能是桌面应用程序)完全不同的技术集的 Web 服务层。

重要的是,我们经常谈论您的堆栈是基于 Windows 还是基于 Linux,这很重要,因为软件开发人员倾向于在考虑特定堆栈的情况下构建产品,或者有使用一个堆栈(或堆栈系列)的经验,但没有使用其他堆栈的经验。只要您与他们的堆栈匹配,产品就应该能按预期工作。

答案2

一般来说,这意味着交付产品所使用的技术。因此,在 Stack Exchange(正式名称为 Stack Overflow)的情况下,我们说我们使用 Windows Stack,尽管其中有一些 Linux,因为我们使用 SQL Server、Windows IIS 和 .Net

答案3

任何具有依赖关系的技术都可以被描述为“堆栈”。基本上,堆栈中较高层的协议或技术如果没有其下层的一切就无法工作。

例如:

“云栈”是指基础设施即服务 (IaaS)、平台即服务 (PaaS) 和软件即服务 (SaaS)。它有各种版本,包含更多层,但基本版本如下所示:

基本云堆栈

软件运行在平台上,平台运行在基础设施上。如果没有基础设施,你就没有任何东西可以运行你的平台或软件。

答案4

如果他们是网络管理员,他们可能指的是 TCP/IP 堆栈。

  • 应用程序——即HTTP
  • 传输层——即 TCP
  • 互联网 - 即 IP
  • 数据链路 - 即以太网
  • 物理 - 即物理介质/电缆

或 OSI 模型:

解释如下

相关内容