羅 寧
(廣西經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院,南寧 530021)
LAMP 是一個應(yīng)用廣泛、低成本、輕量級的平臺架構(gòu),由于架構(gòu)局限,基于LAMP 開發(fā)的系統(tǒng)在實際生產(chǎn)環(huán)境中,如在競賽管理應(yīng)用上,在并發(fā)訪問量大時,經(jīng)常出現(xiàn)訪問阻塞,嚴重影響應(yīng)用,導(dǎo)致承載能力不足。如何尋找和消除瓶頸,解決LAMP服務(wù)器性能和并發(fā)能力不足的問題,這一論題探究具有必要性和迫切性,以期為同行提供思路和實踐指導(dǎo)。
LAMP 主要由于Apache、Linux、PHP 腳本語言、MySQL數(shù)據(jù)庫組成,它具有低成本、強適用、開放性等特點。LAMP 架構(gòu)問世后,得到設(shè)計、開發(fā)者的一致認可,并且應(yīng)用范圍逐漸向企事業(yè)單位擴展,這為網(wǎng)絡(luò)信息平臺完善、服務(wù)器并發(fā)性能調(diào)整提供可靠保障[1]。
Web 服務(wù)器并發(fā)性能高低,主要通過性能指標間接反映,具體從客戶端和提供商兩方面來分析,具體性能指標指吞吐量、用戶基數(shù)、資源使用情況、響應(yīng)時間等。此外,性能參數(shù)也是影響服務(wù)器工作效率和質(zhì)量的主要因素。服務(wù)器運行是否處于正常狀態(tài),往往觀察性能指示器得知,根據(jù)性能指示器結(jié)果作出相應(yīng)反應(yīng)[2]。
服務(wù)器并發(fā)性能運用WPTM 模型測試,所得到的測試結(jié)果過于片面,并且測試前用戶需求主觀臆斷,導(dǎo)致制定的測試計劃和性能指標僅單一滿足用戶需求。此外,WPTM 模型操作單一、層次明確,面對個性化、多變動服務(wù)請求,該模型未提供差異化處理方案,并且服務(wù)器處理流程一成不變,最終系統(tǒng)運行狀態(tài)不能客觀、真實反應(yīng)。長此以往,服務(wù)器并發(fā)性能會大幅度降低,因此,性能優(yōu)化工作急不可待,這為LAMP 架構(gòu)運用提供了良好機會和廣闊空間。
服務(wù)器并發(fā)性能全面優(yōu)化,有利于細致檢查系統(tǒng)運行問題不見,客觀指出系統(tǒng)性能缺陷,從而有依據(jù)的制定問題處理策略,確保系統(tǒng)問題及性能缺陷在短時間內(nèi)高效處理,這對Web 服務(wù)器順利、高效啟動有積極影響。從用戶角度來分析,優(yōu)化后的Wen 服務(wù)器并發(fā)性能,能夠及時滿足用戶使用需要,以此提高用戶操作滿意度,全面保證系統(tǒng)穩(wěn)定性和安全性[3]。
優(yōu)化總的原則是結(jié)合具體情況,制定合理的優(yōu)化策略,以期提高服務(wù)器的多處理能力,將運行效率發(fā)揮到極致。
LAMP 架構(gòu)運用的過程中,應(yīng)將安全工作落實于各個環(huán)節(jié)。對于Apache 服務(wù),啟動指令發(fā)出后,應(yīng)通過固定賬號來運行,根據(jù)站點差異配備相應(yīng)的文件,同時,監(jiān)督控制端口;目錄保護的過程中,充分發(fā)揮htaccess 保護作用;抵御DDOS 攻擊的過程中,有目的的實施IPTABLES。對于Linux 系統(tǒng),針對用戶賬號精細化管理,明確各賬號使用目的;合理調(diào)整端口號;適當限制流量使用行為;妥善設(shè)置目標操作權(quán)限,具體落實權(quán)限一一對應(yīng)工作。對于PHP 腳本語言,高效、精確過濾危險化、特殊化字符;全面控制系統(tǒng)運行中失誤消息;運用特點賬號啟動PHP。對于MySQL 數(shù)據(jù)庫,確定目錄權(quán)限;有選擇的篩選用戶、刪除用戶;動態(tài)發(fā)送root 密碼,并設(shè)置獨立面[4]。
服務(wù)器并發(fā)性能調(diào)整的過程中,工作人員應(yīng)客觀掌握工作原理和運行程序。LAMP 架構(gòu)提供輔助作用后,通過PHP 腳本語言完成編寫任務(wù),并在信息獲取的基礎(chǔ)上有目的的執(zhí)行相關(guān)操作,確保服務(wù)請求得到及時滿足。在此期間,MySQL 數(shù)據(jù)庫向其提供數(shù)據(jù)信息,并借助MTML 模塊實現(xiàn)信息重組,最后信息處理結(jié)果輸送至客戶終端。
首先,落實系統(tǒng)調(diào)節(jié)工作。創(chuàng)設(shè)Linux 系統(tǒng)穩(wěn)定運行條件,以此提高組件穩(wěn)定性,接下來有計劃調(diào)節(jié)其他組件,并動態(tài)增減服務(wù)功能,確保服務(wù)需求被全面及時滿足。這要求工作人員將系統(tǒng)調(diào)節(jié)工作落實于過程,以此提高CPU 利用率。在這一過程中,著重完成內(nèi)核調(diào)優(yōu)、網(wǎng)絡(luò)系統(tǒng)調(diào)優(yōu)、磁盤性能改進任務(wù),這是網(wǎng)絡(luò)性能優(yōu)化的必然要求,同時,也是讀寫塊合理化改進的有效路徑。
其次,適當優(yōu)化Apache 和PHP。合理設(shè)計多處理模塊,并根據(jù)請求和服務(wù)質(zhì)量適當增刪模塊,以此起到配置調(diào)整作用;客戶機與服務(wù)器應(yīng)保持持續(xù)連接狀態(tài),通過能動修改keepalive 值的方式逐一解決各項請求;PHP 優(yōu)化后能夠全面滿足靜態(tài)文件和動態(tài)文件處理需要,同時,配備相應(yīng)的Web 服務(wù)器。
然后,數(shù)據(jù)庫調(diào)優(yōu)工作穩(wěn)步推進。定期檢查硬件狀態(tài),并高效更換問題硬件;MySQL 數(shù)據(jù)庫和查詢功能與時俱進的改進。
最后,改進服務(wù)器并發(fā)策略。之所以實施這一策略,主要是為了在短時間內(nèi)提高CPU 利用率,以免CPU 空間閑置,同時,實現(xiàn)I/O 操作和CPU 計算同步操作目標。具體并發(fā)策略為:一個進程處理一個連接,非阻塞I/O;一個線程處理一個連接,非阻塞IO;一個進程處理多個連接,異步I/O;一個線程處理多個連接,異步IO。最為重要的是,優(yōu)化硬件環(huán)境,即通過scaleup方式從整體上提高Web 服務(wù)器并發(fā)性能[5]。
綜上所述,基于LAMP 架構(gòu)優(yōu)化服務(wù)器并發(fā)性能,這能有效彌補傳統(tǒng)WPTM 模型的不足,通過充分發(fā)揮LAMP 架構(gòu)優(yōu)勢,掌握服務(wù)器并發(fā)性能優(yōu)化注意事項,并制定可行的、合理的服務(wù)器并發(fā)性能優(yōu)化策略,確保Web 服務(wù)器穩(wěn)定運行。因此,行業(yè)從業(yè)者應(yīng)以此為借鑒,探究服務(wù)器并發(fā)性能優(yōu)化的有效路徑。