# 主从式架构

> For AI agents: the complete glossary index is at [llms.txt](https://glossary.cncf.io/zh-cn/llms.txt).
> Markdown versions of every glossary page are available by appending `index.md` to the page URL.

## 是什么

在主从式架构（客户端-服务器架构）中，构成应用程序的逻辑（或代码）会被分成两个或多个组件：
一个期望工作被完成的客户端（例如，运行在你的 web 浏览器中的 Gmail web 应用程序），
以及一个或多个满足该请求的服务器（例如，运行在云中心的谷歌计算机上的“发送电子邮件”服务）。
在这个例子中，你所写的外发邮件是由客户端（运行在您的 web 浏览器中的 web 应用程序）发送到服务器（Gmail 的计算机，它将您的外发邮件转发给对应的收件人）。

这与在一个地方完成所有工作的独立应用程序（如桌面应用程序）形成了对比。例如，像 Microsoft Word 这样的文字处理程序可能会完全安装并运行在你的计算机上。

## 解决的问题

主从式架构解决了自包含应用程序所带来的一个巨大挑战：定期更新。在一个自包含应用程序中的每次更新，用户都必须下载并安装最新版本。
想象一下，你在浏览亚马逊之前，必须把亚马逊的所有产品目录下载到自己的电脑上!

## 如何帮助

通过在远程服务器或服务中实现应用程序逻辑，操作人员可以在不需要修改客户端的逻辑的情况下进行应用程序更新。
这意味着可以更频繁地进行更新。将数据存储在服务器上，允许许多客户端都看到并共享相同的数据。
考虑一下使用在线文字处理程序与传统离线文字处理程序之间的区别。对于前者，你的文件存在于服务器端以便与其他用户共享，这些用户只需从服务器下载它们。
而在传统世界中，文件需要复制到可移动媒体（软盘!）才能与他人共享。

---

- Canonical URL: https://glossary.cncf.io/zh-cn/client-server-architecture/
- Status: Completed
- 最后编辑 July 22, 2022: ` add tags ` ([2f7798e](https://github.com/cncf/glossary/commit/2f7798e5bed8513ccc6f41b217c37fd2b8f6f724))
- Source: https://github.com/cncf/glossary/blob/main/content/zh-cn/client-server-architecture.md
- License: [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/)
