網(wǎng)站性能直接影響用戶打開網(wǎng)站的速度,一個(gè)網(wǎng)站打開速度太慢,很有可能連網(wǎng)站都沒打開用戶就關(guān)閉了頁面,給用戶的體驗(yàn)相當(dāng)不友好。提高網(wǎng)站的打開速度,除了硬件堆砌外,如何提高網(wǎng)站的性能成為本文要討論的話題。春燕網(wǎng)絡(luò)資深開發(fā)寒川為大家總結(jié)一下網(wǎng)站開發(fā)中如何提高網(wǎng)站的性能。
1 數(shù)據(jù)庫優(yōu)化
1.1 數(shù)據(jù)庫建索引。
很多時(shí)候,數(shù)據(jù)庫瓶頸是致命的,優(yōu)化數(shù)據(jù)庫,建立恰當(dāng)?shù)乃饕翘岣邤?shù)據(jù)庫性能的必要手段。在網(wǎng)站開發(fā)過程中,需要建立恰當(dāng)?shù)臄?shù)據(jù)庫索引。當(dāng)然,索引需要根據(jù)業(yè)務(wù)實(shí)際來作,并不是越多越好。
1.2 數(shù)據(jù)分表
有時(shí)候數(shù)據(jù)量相當(dāng)大,這就要用到數(shù)據(jù)分表,把大的數(shù)據(jù)分成若干個(gè)表,方便數(shù)據(jù)的增刪改查詢操作。
1.3 數(shù)據(jù)緩存
緩存技術(shù)其是有很多,之所以把數(shù)據(jù)緩存放到數(shù)據(jù)庫的優(yōu)化,是因?yàn)榫彺姹举|(zhì)上也是一種數(shù)據(jù)。緩存可以是內(nèi)存緩存,也可以是NoSQL類的數(shù)據(jù)庫緩存,還可以是文件緩存,跟據(jù)具體開發(fā)業(yè)務(wù)選擇恰當(dāng)?shù)木彺婕夹g(shù),能有效提高網(wǎng)站性能。

2 程序優(yōu)化
網(wǎng)站程序語言本身有很多種,每種開發(fā)語言具體的優(yōu)化的手段也有很多種,本文以PHP為例。
2.1 PHP版本的選擇
目前PHP7+的性能算是很高的了,較于PHP5性能提升了不少,因此,網(wǎng)站建議部署到PHP7+的服務(wù)器上,能使你的代碼運(yùn)行更快。
2.2 PHP程序優(yōu)化
(1)使用效率更高的函數(shù)代替低效的函數(shù)。PHP含有大量的函數(shù),且很多函數(shù)功能相差無機(jī),但性能上卻有不同,使用效率更高的函數(shù)代替低效的函數(shù)是一種優(yōu)化方式。
(2)銷毀變量去釋放內(nèi)存,特別是大的數(shù)組。
(3)避免使用正則表達(dá)式。
(4)最好不用@,用@掩蓋錯(cuò)誤會(huì)降低腳本運(yùn)行速度。
(5)循環(huán)內(nèi)不能設(shè)置數(shù)據(jù)查詢。
(6)單引號(hào)代替雙引號(hào)。
(7)其它優(yōu)化手段。
3 網(wǎng)站前端優(yōu)化
3.1 減少太大資源的引入。如:大圖片,視頻,音頻等。
3.2 合并資源。如js合并,使用CSS sprites合并圖片,可有效減少頁面的請(qǐng)求次數(shù)。
3.3 使用前端緩存。
3.4 壓縮傳輸,使用gzip壓縮頁面、圖片、js、css壓縮。
3.5 避免引入Flash。
3.6 js放到最后引入,css放到head內(nèi)。
3.7 采用ajax技術(shù)局部刷新頁面。