雲端架構 基礎

雲端原生 (Cloud-Native) 應用的核心設計原則是什麼?

AI 練習作答

雲端原生的定義

雲端原生是一種充分利用雲端環境特性的軟體設計方式,讓應用能夠彈性擴縮、快速部署、高可用。

12-Factor App 關鍵原則

1. 程式碼庫 (Codebase):一份程式碼,多個部署環境

2. 依賴 (Dependencies):明確宣告並隔離依賴,不依賴系統環境預裝套件

3. 設定 (Config):設定儲存在環境變數中,不硬編碼(區分 dev/staging/prod)

4. 支援服務 (Backing Services):資料庫、快取、訊息佇列視為外部可替換資源,透過 URL/credentials 連接

5. 建置與執行分離:嚴格區分 Build → Release → Run 三個階段

6. 無狀態程序 (Stateless Processes):程序不保存狀態,Session 等狀態存至外部(Redis)

7. 連接埠綁定 (Port Binding):透過綁定連接埠提供服務,不依賴外部 Web 容器

8. 並發性 (Concurrency):透過增加程序數量(水平擴展)來處理更大負載

9. 快速啟動與優雅關閉 (Disposability):秒級啟動,收到 SIGTERM 後優雅停止處理中的請求

10. 環境一致性 (Dev/Prod Parity):開發、測試、生產環境盡量保持一致

11. 日誌 (Logs):將日誌視為事件流輸出至 stdout,由平台收集

12. 管理程序 (Admin Processes):資料庫 migration 等管理任務作為一次性程序執行

✦ AI 模擬面試

輸入你的答案,AI 即時分析精準度與改進空間

登入後即可使用 AI 評分