12因子應用是由PaaS提供商Heroku的Adam Wiggins提出的。Heroku已經被SaaS行業領軍廠商Salesforce收購,根據維基百科的記載,同年2011年松本行弘也加盟了該公司擔任Ruby首席架構師。 後端
做爲雲平臺廠商,該公司創始人根據經驗總結出來的SaaS軟件開發的方法論(12因子)無疑值得同行學習。引用原文的描述:微信
本文綜合了咱們關於 SaaS 應用幾乎全部的經驗和智慧,是開發此類應用的理想實踐標準,並特別關注於應用程序如何保持良性成長,開發者之間如何進行有效的代碼協做,以及如何 避免軟件污染 。
12因子的大綱已經有中文翻譯,能夠直接參考架構
https://12factor.net/zh_cn/
每一個因子的解釋,能夠在該網站下載epub英文電子版瞭解。其基本準則跟我一直在考慮的如何構建健壯和運維友好的系統有必定重合,內容覆蓋了應用開發的整個生命週期:編碼/配置/CI/CD/發佈/運維。雖然提出時間比較久了,明細條目的解釋仍是有翻譯的意義,我會在後面翻一下。併發
12-factors I. 基準代碼 一份基準代碼,多份部署 II. 依賴 顯式聲明依賴關係 III. 配置 在環境中存儲配置 IV. 後端服務 把後端服務看成附加資源 V. 構建,發佈,運行 嚴格分離構建和運行 VI. 進程 以一個或多個無狀態進程運行應用 VII. 端口綁定 經過端口綁定提供服務 VIII. 併發 經過進程模型進行擴展 IX. 易處理 快速啓動和優雅終止可最大化健壯性 X. 開發環境與線上環境等價 儘量的保持開發,預發佈,線上環境相同 XI. 日誌 把日誌看成事件流 XII. 管理進程 後臺管理任務看成一次性進程運行
本文來自微信公衆號「麥芽麪包,id「darkjune_think」
轉載請註明。微信掃一掃關注公衆號。
交流Email: zhukunrong@yeah.net運維