性能方面優(yōu)化方案:
1、接口方面
現(xiàn)在移動(dòng)端開發(fā)越來越火,需要我們PHP程序員做接口數(shù)據(jù)的開發(fā),雖然功能實(shí)現(xiàn)起來比較簡(jiǎn)單,但是在數(shù)據(jù)傳輸?shù)目炻瑪?shù)據(jù)是否符合要求會(huì)影響移動(dòng)端或者PC端的響應(yīng)時(shí)間,造成用戶體驗(yàn)不良好問題,那么在接口數(shù)據(jù)的封裝,傳輸中,我們可以通過壓縮數(shù)據(jù)來進(jìn)行(Gzip),當(dāng)然也是要分情況,數(shù)據(jù)量本身就很少,壓縮數(shù)據(jù)處理了有可能比未壓縮之前還大,就起了反作用了。同時(shí),在壓縮數(shù)據(jù)的同時(shí)會(huì)加大對(duì)CPU的開銷,所以視情況而定。當(dāng)然,壓縮數(shù)據(jù)有利于數(shù)據(jù)的輸出,Client端能夠更快的獲取到數(shù)據(jù)進(jìn)行處理,提高用戶體驗(yàn)
2、緩存
當(dāng)我們某些頁面數(shù)據(jù)短期不會(huì)造成數(shù)據(jù)變動(dòng)的時(shí)候,并且用戶訪問量大,我們可以考慮提高緩存的復(fù)用,多次請(qǐng)求,緩存返回?cái)?shù)據(jù),畢竟緩存是存儲(chǔ)在內(nèi)存中,讀寫的開銷要小于數(shù)據(jù)庫(kù)和磁盤,所以使用緩存技術(shù),提高緩存的復(fù)用性真實(shí)可行
3、旁路
開發(fā)中使用過Git版本控制的朋友們應(yīng)該知道,Git支持多條分支開發(fā),開發(fā)測(cè)試完進(jìn)行分支合并,那么旁路方案也可以模擬Git來進(jìn)行,但有一個(gè)前提,多條分支之間不應(yīng)該有數(shù)據(jù)的依賴性,當(dāng)有數(shù)據(jù)依賴性的時(shí)候,我們只能使用串行方案來進(jìn)行邏輯處理
4、重疊時(shí)間窗口
類似于旁路,但是在一條分支上進(jìn)行重疊操作,1,2,3個(gè)任務(wù)請(qǐng)求沒有很強(qiáng)的業(yè)務(wù)數(shù)據(jù)項(xiàng)依賴的情況下,可以先跑1的請(qǐng)求,在請(qǐng)求未完成的情況下開始處理2的請(qǐng)求,2未完成的情況下處理3的請(qǐng)求,如果有數(shù)據(jù)依賴,那么任務(wù)執(zhí)行肯定無法進(jìn)行重疊了。當(dāng)我們?cè)谥丿B時(shí)間窗口的時(shí)候,3條請(qǐng)求總時(shí)長(zhǎng)肯定是少于串行執(zhí)行項(xiàng)目代碼進(jìn)行3次請(qǐng)求的時(shí)長(zhǎng)的