此一系列文章,是在描述一個高可用、擴展性高的 SaaS,或是 Web 應用程式,應該要具備什麼樣的特質。
The Twelve-Factor App 一文(以下簡稱 12-Factor
)提供了方法論,來讓建置出來的 SaaS:
- 使用宣告格式來配置自動化,能讓新的開發者能使用最少的學習成本加入專案。
- 與底層的作業系統之間,定義一個清楚的介面。這將可讓執行環境有最大的可移植性。
- 適合部署到現在的雲端服務平台。
- 開發與維運環境差異降到最低,可持續交付來提供最大的敏捷力。
- 不需在工具、架構、開發流程做明顯變化的前提下,實現擴展。
目錄
- Codebase
- 依賴
- 配置
- 後端服務
- 建置、發佈、執行
- Processes
- 連接埠綁定
- 並發
- Disposability
- 開發與線上環境等價
- Logs
- 管理 Processes