SPA架構的優點和缺點以及一些思考


SPA是什么?
  全稱是單頁面應用。

  一個SPA就是一個WEB應用,它所需的資源(HTML CSS JS等),在一次請求中就加載完成,也就是不需刷新地動態加載。

用術語“單頁”就是因為頁面在初始化加載后就永遠不會重新加載刷新。

優點:
減輕服務器端的壓力。


因為服務器先將一份包含了靜態資源、JavsScript和模板的靜荷數據(payload)發送到了客戶端,之后客戶端只需要獲取渲染頁面或視圖所需要的數據即可。
payload就是起關鍵作用的資源

 

提高了頁面的渲染效果。

由於移動設備的流行,可以開發提供JSON格式數據的網絡服務,然后可以提供不同的客戶端使用。

SPA的使用,我們可以使用一個HTTP API,一個HTTP API相比在服務端渲染一個HTML頁面有諸多好處,這樣就可以很方便的進行單元測試等操作,還可以被其他很多客戶端程序所用。

SPA最大的好處就是大量的工作都在瀏覽器中完成,服務端承擔更少的工作,這樣就可以處理更多的請求。同時SPA需要額外的請求模版開銷,我們可以通過預編譯模版、緩存機制和將多個模板拼接成一個大的模板來減少請求數量。

缺點:

首屏加載時間會很長。

SEO不友好。

主要是因為SPA利用了hash片段實現路由,而利用hash片段不會作為HTTP請求中的一部分發送給服務器。

而SPA使用hash片段的目的是:當片段的內容發送變化時,瀏覽器不會像URI發送變化時那樣發起新的網絡請求。這樣就可以只請求頁面或視圖渲染所需要的數據,而不是為每一個頁面獲取並解析整份文檔。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM