# 用戶端-伺服器架構

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

<a id="what-it-is"></a>

## 是什麼

在用戶端-伺服器架構（又可被稱爲主從式架構）中，構成應用程式的邏輯（或者說程式碼）會被拆解至兩組或是多組元件：
一組用戶端負責發起工作請求（例如在你的瀏覽器裡執行的 Gmail 網頁應用程式），
以及一組或多組伺服器負責滿足這個請求（例如執行在 Google 雲端的「發送郵件」服務）。
舉例來說，你撰寫的外寄電子郵件是由用戶端（在你的瀏覽器裡執行的網頁應用程式）
傳送到伺服器（Gmail 的伺服器，這些伺服器會將你的外寄電子郵件轉寄給收件人）。

這與獨立式應用程式（例如桌面應用程式）形成對比，後者將所有的工作集中於一處完成。
舉例來說，像是 Microsoft Word 這樣的文字處理程式，可以完全安裝並在你的電腦上執行。

<a id="problem-it-addresses"></a>

## 解決的問題

用戶端-伺服器架構解決了獨立式應用程式面臨的一大挑戰：定期更新。
對於獨立式應用程式，每一次的更新，都需要使用者自行下載並安裝最新版本。
試想如果你在瀏覽 Amazon 的產品目錄前，需要先將其完整下載到你的電腦上才能開始瀏覽！

<a id="how-it-helps"></a>

## 如何幫助我們

透過在遠端伺服器或是服務中實現應用程式的邏輯，維運人員可以在不改動用戶端邏輯的情況下進行更新。
這意味著可以更頻繁地進行更新。
將資料存儲在伺服器上，允許多組使用者查看和共享相同的資料。
試想看看線上文字處理器與傳統的離線文字處理器之間的使用差異。
在前者中，你的檔案是儲存於伺服器上並可以與其他使用者共享，他們只需從伺服器下載即可。
在傳統世界中，檔案需要先複製到可移除式媒體（像是磁碟片！）中並與個別用戶分享。

---

- Canonical URL: https://glossary.cncf.io/zh-tw/client-server-architecture/
- Status: Completed
- 最後編輯 October 21, 2023: ` [tw] Update punctuation to comply with Taiwanese standards ` ([e185c61](https://github.com/cncf/glossary/commit/e185c612def9e20fc08cab10a794bbf66cf7f8ce))
- Source: https://github.com/cncf/glossary/blob/main/content/zh-tw/client-server-architecture.md
- License: [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/)
