集成 CDN
內(nèi)容交付網(wǎng)絡(luò)(又名 CDN)是一個(gè)非常棒的工具,可以集成到你的網(wǎng)站中,因?yàn)樗梢源蟠蠹涌炷愕膬?nèi)容交付速度。因?yàn)樗且粋€(gè)分布式服務(wù)器網(wǎng)絡(luò),所以 CDN 會(huì)找到離用戶(hù)最近的服務(wù)器并部署它來(lái)交付內(nèi)容。通過(guò)這種方式,內(nèi)容會(huì)走得更短,并提供更好的用戶(hù)體驗(yàn)。許多 CDN 還具有許多其他可提高網(wǎng)站性能的功能:圖像優(yōu)化、縮小 CSS、代碼重組。
壓縮文件
每個(gè)文件都需要一些時(shí)間來(lái)加載。問(wèn)題是,文件越大,加載的時(shí)間就越長(zhǎng)。結(jié)果,該網(wǎng)站以極其緩慢的方式加載并惹惱了用戶(hù)。解決大體積文件的問(wèn)題,壓縮它們并享受更快的性能!
對(duì)于文件壓縮,建議使用 Gzip 工具,這是最受信任的工具之一。Gzip 聲稱(chēng)可以將文件大小減少多達(dá) 70%,并顯著提高性能。
啟用 Gzip 的方法有很多種,具體取決于你的站點(diǎn)。 例如,你可以在 .htaccess 文件中啟用 Gzip 或簡(jiǎn)單地使用插件。
如何加速 Web 應(yīng)用程序并提高網(wǎng)站性能
使用延遲加載
每個(gè)網(wǎng)站都包含一定數(shù)量的媒體文件(即圖像、視頻、音頻文件),每個(gè)元素的加載需要相當(dāng)長(zhǎng)的時(shí)間。
延遲加載設(shè)計(jì)模式使媒體文件僅在進(jìn)入用戶(hù)視點(diǎn)時(shí)才加載。這意味著,當(dāng)用戶(hù)打開(kāi)頁(yè)面時(shí),它不會(huì)立即加載所有媒體文件,而只會(huì)加載頁(yè)面頂部的媒體文件。而且,當(dāng)用戶(hù)向下滾動(dòng)時(shí),頁(yè)面將加載更多文件。
這種技術(shù)極大地節(jié)省了帶寬,同時(shí)提供了無(wú)縫的用戶(hù)體驗(yàn)。延遲加載還擺脫了不必要的代碼執(zhí)行并減少了內(nèi)存使用。你還可以將代碼分成不同的包,以便不同的頁(yè)面僅包含代碼塊。這樣,瀏覽器將只加載用戶(hù)所在的那些代碼。
縮小 CSS 和 JavaScript
當(dāng)你的站點(diǎn)下載 JavaScript 或 CSS 文件時(shí),會(huì)向服務(wù)器發(fā)送一個(gè) HTTP 請(qǐng)求。發(fā)送的請(qǐng)求越多,性能就越慢。為了解決這個(gè)問(wèn)題,你可以合并和縮小文件以減少 HTTP 請(qǐng)求的數(shù)量,從而提高性能。
縮小包括消除空格、不必要的代碼行或換行符。要執(zhí)行此過(guò)程,請(qǐng)使用 WP Rocket 或 WillPeavy 等可用插件之一。
優(yōu)化數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)優(yōu)化可能是你網(wǎng)站性能的瓶頸。雖然有很多方面需要關(guān)注,但最常見(jiàn)的是:
MySQL 查詢(xún)優(yōu)化:使用 EverSQL 查詢(xún)優(yōu)化器等工具來(lái)微調(diào) MySQL 查詢(xún)并獲得有用的建議,
索引:該方法允許更快的行選擇和排序,
內(nèi)存容量:如果內(nèi)存不足,會(huì)降低性能,因此你可能需要尋找更強(qiáng)大的托管解決方案。
請(qǐng)注意,數(shù)據(jù)庫(kù)優(yōu)化也取決于你的站點(diǎn)。 對(duì)于某些網(wǎng)站(即電子商務(wù)平臺(tái)),有一些獨(dú)特的問(wèn)題需要處理,因此你需要先進(jìn)行審核,以確定所有需要優(yōu)化的問(wèn)題區(qū)域。
擺脫阻塞的 JavaScript
許多網(wǎng)站最常見(jiàn)的問(wèn)題之一是阻止渲染的 JavaScript 文件。 要解決此問(wèn)題,你可以執(zhí)行以下操作:
在 HTML 文檔中內(nèi)聯(lián)外部鎖定腳本
使用特殊插件(即 W3 Total Cache)
使用 async 屬性使 JavaScript 文件異步
啟用緩存
每次用戶(hù)登陸頁(yè)面時(shí),瀏覽器都會(huì)加載其內(nèi)容 - 每次出現(xiàn)新查詢(xún)時(shí)都會(huì)這樣做。 現(xiàn)在,你能想象每天有多少用戶(hù)訪(fǎng)問(wèn)你的網(wǎng)站以及瀏覽器必須加載頁(yè)面內(nèi)容的次數(shù)嗎?
為了防止站點(diǎn)為返回的用戶(hù)加載相同的內(nèi)容并節(jié)省一些加載時(shí)間,請(qǐng)啟用瀏覽器緩存。 至于新用戶(hù),網(wǎng)站仍會(huì)從頭開(kāi)始加載內(nèi)容,因?yàn)樾掠脩?hù)的緩存是空的。盡管如此,完整的瀏覽器緩存可以將站點(diǎn)速度從 2.6 毫秒提高到 1(甚至 0.9),因此強(qiáng)烈建議使用它。
快速工具:蓋茨比
Gatsby 是一個(gè)靜態(tài)站點(diǎn)生成器。 該框架使用初步加載:當(dāng)用戶(hù)打開(kāi)主頁(yè)時(shí),瀏覽器在后臺(tái)模式下加載顯示鏈接到主頁(yè)的站點(diǎn)其他頁(yè)面所需的數(shù)據(jù)。
使用 Gatsby 構(gòu)建的網(wǎng)站是一個(gè) React 應(yīng)用程序,因此它只加載有關(guān)頁(yè)面之間差異的數(shù)據(jù),而不是完整的頁(yè)面。 在頁(yè)面之間的轉(zhuǎn)換過(guò)程中,虛擬 DOM 被更新。 通過(guò)這種方式,用戶(hù)可以享受高速加載和流暢的網(wǎng)站性能。
上述性能優(yōu)化方法是處理網(wǎng)站慢問(wèn)題的最常用方法。但是,由于每個(gè)網(wǎng)站和 Web 應(yīng)用程序都是獨(dú)一無(wú)二的,因此你需要首先進(jìn)行性能審核,以準(zhǔn)確識(shí)別你的網(wǎng)站存在的問(wèn)題并提出解決問(wèn)題的正確方法。