---
title: "資源限制"
description: "理解每副本的 CPU、內存預留與上限，以及它們對調度和更新的影響。"
---

> Documentation Index
> Fetch the complete documentation index at: https://cdelivery.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# 資源限制

資源設定按每個副本生效。建立或編輯應用程式時，在資源設定中分別設定預留與限制；修改需要 Operator 或 Admin。

## 預留和限制

| 設定 | 作用 |
| --- | --- |
| CPU 預留 | 調度時為副本考慮的 CPU 容量 |
| 內存預留 | 調度時為副本考慮的內存容量 |
| CPU 限制 | 限制執行時可使用的 CPU 份額 |
| 內存限制 | 限制執行時可使用的內存，超出可能導致進程被終止 |

預留不是資源使用量的預測值，也不等同於執行時上限。限制過小會造成節流或內存不足；預留過大會讓副本找不到滿足條件的伺服器。

CPU 單位為核，例如 `0.5` 表示半個 CPU 核的容量。界面支援從 `0.001` 到 `10000`，精度為 `0.001`。內存按界面所選 MiB 或 GiB 填寫，注意不要把位元組與 MiB 混用。

## 設定示例

一個有兩個副本的 Web 應用程式，可以從以下值開始測量：

| 項目 | 每個副本 |
| --- | --- |
| CPU 預留 | 0.5 |
| CPU 限制 | 1 |
| 內存預留 | 256 MiB |
| 內存限制 | 512 MiB |

兩個副本合計需要考慮 1 核 CPU 和 512 MiB 內存預留；平台本身和其他應用程式還需要額外容量。這是說明計算方式的示例，不是適用於所有業務的推薦設定。

儲存後查看[應用程式指標](/docs/zh-tw/guides/observability/metrics/application/)，根據正常負載及峰值修正設定。預留不應高於對應限制。

## 更新和擴容需要額外空間

使用先啟動新副本的更新策略時，新舊副本會暫時重疊，伺服器需要容納額外預留。自動擴容同樣受資源、標籤和每台伺服器副本上限約束。

CPU 限制也影響自動擴縮容對負載的解釋。未設定 CPU 限制時，不能按單核百分比理解所有副本的負載；詳見[副本與自動擴縮容](/docs/zh-tw/guides/apps/scaling/)。

## 調整後的驗證

1. 確認新副本能夠完成調度。
2. 在代表性業務負載下觀察 CPU、內存和請求延遲。
3. 對照應用程式日誌檢查是否發生內存不足、進程退出或重啟。
4. 檢查同伺服器其他應用程式是否仍有足夠資源。

如果更新卡住，先檢查額外副本容量，再檢查標籤和每台伺服器的副本限制。不要僅提高期望副本數而忽略伺服器容量。

執行時資源限制的基礎行為可參考 [Docker 資源約束說明](https://docs.docker.com/engine/containers/resource_constraints/)。

Source: https://cdelivery.dev/docs/zh-tw/guides/apps/resources/index.mdx
