您在現代網(wǎng)絡(luò )上看到的幾乎每個(gè)網(wǎng)站都使用 Javascript。Javascript 使網(wǎng)站具有交互性、個(gè)性化,并提供比純 HTML 更豐富的用戶(hù)體驗。然而,Javascript 往往會(huì )使頁(yè)面變慢,因為它需要加載額外的代碼和資源。隨著(zhù)您的網(wǎng)站規模不斷擴大,Javascript 代碼的數量、復雜性和依賴(lài)性也會(huì )隨之增加。這可能會(huì )導致性能不佳、網(wǎng)站運行緩慢和用戶(hù)體驗不佳。
默認情況下,網(wǎng)頁(yè)會(huì )在您的瀏覽器中加載并執行 Javascript。這稱(chēng)為客戶(hù)端渲染。另一種方法是服務(wù)器端渲染 (SSR),它在服務(wù)器上執行 Javascript,然后將平面 HTML 響應發(fā)送到瀏覽器。
SSR 消除了在瀏覽器中加載和處理 Javascript 的需要,并改進(jìn)了某些性能指標,例如 First Paint 和 First Contentful Paint。但是,它并不能神奇地使頁(yè)面快速點(diǎn)亮:在服務(wù)器上生成頁(yè)面需要時(shí)間,這通常會(huì )導致首字節時(shí)間(TTFB) 變慢。
我如何知道我的網(wǎng)站應該使用 SSR 還是客戶(hù)端渲染?
大多數 Javascript 框架(Angular、Vue、React 等)都支持 SSR。但是,僅僅因為 SSR 可用并不意味著(zhù)它最適合您的網(wǎng)站。對于中小型網(wǎng)站或主要關(guān)注內容的網(wǎng)站,采用和使用 SSR 解決方案相當容易。另一方面,大型企業(yè)應用程序難以弄清楚如何以經(jīng)濟高效的方式執行 SSR。
開(kāi)發(fā)人員在使用 SSR 時(shí)面臨的最大障礙圍繞著(zhù)復雜性。一些常見(jiàn)問(wèn)題包括:
- 許多活動(dòng)部件:大型網(wǎng)站傾向于使用復雜的代碼庫,這些代碼庫是拼湊在一起并隨著(zhù)時(shí)間的推移而發(fā)展的。這就是為什么推出 SSR 幾乎與從頭開(kāi)始完全重建一樣困難。
- 資源分配:將 SSR 添加到站點(diǎn)需要幾個(gè)月的時(shí)間,并且需要工程團隊的大量投資。這可能意味著(zhù)他們將無(wú)法專(zhuān)注于添加功能、處理現有技術(shù)債務(wù)或推出任何新項目。
- 缺乏文檔和統一方法:像 AirBnB 這樣擁有大量工程資源的大公司有能力投資構建自己的 SSR 解決方案。精益團隊或使用大量遺留代碼的團隊會(huì )發(fā)現這要困難得多。
- 持續支持:即使您構建并啟動(dòng)您的 SSR 應用程序,您也沒(méi)有完成。對于新的站點(diǎn)更新,您必須確保 SSR 仍按預期工作,并修復新版本引入的任何潛在問(wèn)題。
- 衡量影響:值得投資嗎?我將如何衡量績(jì)效差異并將它們與對業(yè)務(wù)、訪(fǎng)問(wèn)量和收入的影響聯(lián)系起來(lái)?在不知道是否會(huì )得到回報的情況下,很難獲得構建 SSR 解決方案的支持。
對于很多公司和工程團隊來(lái)說(shuō),SSR 仍然是一項艱巨的任務(wù),很難判斷是否值得去做。我們在構建了一個(gè)解決 SEO 性能問(wèn)題的解決方案,使用動(dòng)態(tài)渲染、質(zhì)量控制和緩存。它被稱(chēng)為Speedworkers。
動(dòng)態(tài)渲染:照顧機器人
與服務(wù)器端渲染類(lèi)似,動(dòng)態(tài)渲染將僅向搜索機器人預渲染和提供純 HTML 內容。
這對 SEO 來(lái)說(shuō)是一個(gè)巨大的好處,原因有很多:
- 機器人可以更快地抓取您的內容,因此您的抓取預算會(huì )增加
- 他們可以訪(fǎng)問(wèn)以前從未見(jiàn)過(guò)的頁(yè)面,從而提高索引
- 他們可以更有效、更頻繁地抓取您的內容,從而使索引中的內容更新鮮
- 您的所有重要內容對機器人都是可見(jiàn)的,包括通常通過(guò) Javascript 呈現的內容。
同時(shí),您的最終用戶(hù)沒(méi)有任何改變:他們在瀏覽器中啟用 Javascript 后獲得相同的內容。當然,最好也為用戶(hù)優(yōu)化加載時(shí)間,但這比平衡 SSR 和 CSR 容易得多。
使用動(dòng)態(tài)渲染和 SpeedWorkers,我們消除了對 SSR 的所有復雜性和需求。這是因為我們的解決方案涉及:
- 沒(méi)有移動(dòng)部件:我們在 CDN 級別上設置 SpeedWorkers,甚至無(wú)需接觸您的網(wǎng)站
- 資源分配無(wú)憂(yōu):讓您的技術(shù)團隊專(zhuān)注于重要項目
- 無(wú)需閱讀文檔:我們知道動(dòng)態(tài)渲染已獲得 Google 和 Bing 的認可和推薦
- 沒(méi)有額外的支持:這是一個(gè)相當交鑰匙的解決方案,我們運行和維護它
- 我們通過(guò) SiteAnalytics 衡量影響,通過(guò) SpeedWorkers 儀表板監控績(jì)效并為您提供報告。
SpeedWorkers 還可以為您節省基礎設施成本,因為現在 SpeedWorkers 承擔了大量的機器人流量,而不是您的服務(wù)器。
您可以期待的結果
SpeedWorkers 機器人的目標交付時(shí)間低于 300 毫秒。最重要的是,我們的緩存效率通常會(huì )帶來(lái)更高的速度增益。在啟動(dòng) SpeedWorkers 之后,您可以期待頁(yè)面交付速度的提高。隨著(zhù)頁(yè)面變得更快,機器人開(kāi)始更有效地抓取您的網(wǎng)站,獲取更多內容。
戰略頁(yè)面的爬取率也會(huì )增加,因為搜索機器人會(huì )在你的網(wǎng)站結構中變得更深更廣。如果您是一個(gè)電子商務(wù)網(wǎng)站,并且提高了產(chǎn)品詳細信息頁(yè)面的抓取率,那么這些頁(yè)面很有可能會(huì )被編入索引和排名。因此,用戶(hù)可以看到更多的產(chǎn)品庫存。
提高速度的另一個(gè)好處是增加推動(dòng)自然流量的活動(dòng)頁(yè)面。最后,被索引、排名和獲得點(diǎn)擊的頁(yè)面越多,它們可以產(chǎn)生的增量收入就越多。這些是純粹的 SEO 好處。我們還知道,SpeedWorkers 消除了投資工程資源的需要,并節省了基礎設施成本,因為來(lái)自機器人的所有流量都流向 SpeedWorkers,而不是您的服務(wù)器。我們托管和維護它,因此您不必擔心。
SSR 與 CSR 相比具有明顯的優(yōu)勢。然而,SSR 可能很復雜、令人困惑且成本高昂。動(dòng)態(tài)渲染是 SEO 的絕佳替代方案 - 聯(lián)系我們獲取 SpeedWorkers 的免費自定義演示,并可視化您網(wǎng)站的好處。