程序開發流程

程序開發流程

需求設計 —>

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

詳細設計 —>

 產生詳細文檔。功能模塊劃分,接口定義,類圖,業務流程圖,數據庫設計等

編碼階段 —>

  程序開發階段

  按照編碼規範和接口定義,進行功能模塊人員劃分,代碼實現。

測試階段 —>

  單元測試,集成測試(接口,功能),灰度測試(預發佈,準上線)

部署上線 —>

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

業務分析 —>

  分析線上業務日誌,優化程序架構和邏輯,數據分析,策略調整。

附加

程序規模:

單機程序(進程,線程) —> 多機程序(多進程,調度,協調)

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, 磁盤)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章