LAMP架構下的Web開發概念、流程及優化策略(一)

技術小美發表於2017-11-16

架構設計 ——前端架構 後端架構 視覺體系 
對接約定 ——介面約定 標識約定 通訊程式碼約定 
開發 ——建立開發框架 建立資料庫 實施編碼 
測試 ——功能測試 效能測試

 

一、架構設計

 

 

二、對接約定

1、介面約定

約定請求方式(普通HTTP請求,XMLHTTP請求,SOAP請求,phprpc請求)、請求型別(POST,GET,HEADER)、請求地址、請求引數。(前端請求四要素,文件中體現,程式中實現。)

2、標識約定


為確保前後端並行開發,減少開發的時間週期,需要在開發前就做好標識約定,通過文件描述清楚前端模板變數和後端程式變數之間的約定關係,以及後端返回各種狀態值的含義。

建議的最佳應用是:後端不對使用者檢視負責,只管輸出狀態程式碼。呈現給使用者的檢視由前端負責。


 

三、各類web伺服器優缺點比較


 Nginx

優點:原生支援反向代理,帶有簡單的負載均衡及容錯機制。速度最快。(10%-1000%),佔用資源很少。

缺點:文件較少,手工配置,只能以fast-cgi方式執行php.

 Apache

優點:文件豐富,穩定(!?),應用環境多。

缺點:佔用資源較多,高壓力下表現效能不如nginxlighttpd,手工配置。

 IIS

優點:文件豐富,win平臺下安裝簡單配置方便

缺點:不支援跨平臺,效能低下。

 

四、常見web系統組織圖

 

五、PHP在web應用中的特點


 語言弱型別

 指令碼執行,生命週期短。

 物件導向與程式導向並存。

 弱效率、重流程、強擴充套件。

 

 

1、PHP的優點

 適合web開發。將web開發中常用的行為、內容做了良好的封裝。程式設計師可以很輕易的使用它們。

 基於指令碼的執行方式,修改程式碼後不需要重新編譯,很多情況下也不需要重啟伺服器。

 開發快捷,部署方便,支援環境眾多。

 非常優秀的擴充套件能力。非常多的擴充套件子件。

 開發框架眾多。對多種資料庫支援很好

 良好的社群支援,本身開源。修改容易

 

2、PHP的缺點

 容易寫出壞的程式碼。(解決方法:嚴格遵循規範)

 效能不高。(解決方法:複雜業務使用C擴充套件)

 每次執行都要經歷掃描編譯執行的階段,無執久物件模型。(解決方法:使用APC

 命名混亂,引數混亂,得隨時翻著手冊

 

3、PHP框架


 對開發者起編碼約束作用。

 提供了ORM,使對資料庫變成對資料物件的訪問,讓程式設計師對資料的處理更加專注於物件導向上.

 通過配置(無需改動程式碼)即能變更服務環境,使得遷移成本減小

 方便程式設計師實現完整的MVC開發模式.使程式設計師更專注於業務領域,不再過多關注建立資料模型的底層程式碼以及處理檢視展示.

 內建大量開發中的常用工具。可隨時呼叫。也可自己擴充套件編寫。

 本身即由PHP編寫。可隨時修改以滿足達到自己的需求。

 

 

本文轉自百度技術51CTO部落格,原文連結:http://blog.51cto.com/baidutech/748354,如需轉載請自行聯絡原作者


相關文章