1. 程式人生 > >程式開發流程

程式開發流程

程式開發流程

需求設計 —>

 產生需求文件。整理功能和依賴條件等

詳細設計 —>

 產生詳細文件。功能模組劃分,介面定義,類圖,業務流程圖,資料庫設計等

編碼階段 —>

  程式開發階段

  按照編碼規範和介面定義,進行功能模組人員劃分,程式碼實現。

測試階段 —>

  單元測試,整合測試(介面,功能),灰度測試(預釋出,準上線)

部署上線 —>

  考慮業務訪問特徵,採用相應線上策略(反向代理,增加程式例項,擴充套件機器)等,部署程式到線上。

業務分析 —>

  分析線上業務日誌,優化程式架構和邏輯,資料分析,策略調整。

附加

程式規模:

單機程式(程序,執行緒) —> 多機程式(多程序,排程,協調)

CPU計算密集, 磁碟IO密集型,網路IO密集(非同步非阻塞,epoll)

HTTP協議:

應用層協議,基於TCP協議的。

四層:資料鏈路層 —》 傳輸層(TCP, UDP) — 》 網路層(IP) —》 應用層

網路ISO七層結構

HTTP瀏覽器處理請求過程:

輸入domain —> DNS解析得到服務IP地址 —> TCP三次握手 —> HTTP通訊 —> web伺服器(解析並組裝網頁頁面) —> 返回給使用者HTTP頁面

web服務架構:

DNS層 —> 負載均衡層 (F5,nginx) —> 應用服務層 (eg: django實現的web服務) —> 快取服務層(redis) —> 資料持久化層(mysql, 磁碟)