97免费在线观看视频 I 午夜夫妻视频 I 久久久久久网站 I 天堂网男人 I 欧美大波大乳人奶 I 丝袜 中出 制服 人妻 美腿 I 窝窝午夜理论片影院 I 日韩在线伦理电影 I 韩国特级毛片 I 亚洲欧美另类激情 I 在线成人日韩 I 麻豆视频免费看 I 黄色生活毛片 I 极品一线天小嫩嫩真紧 I 色久天堂 I 久久久久久黄色片 I 林智妍三级露全乳电影视频 I 大肉大捧一进一出好爽视频 I 空乘伦理hd I 少妇口述与子做过爱 I 成人免费影片 I 国产精品国内免费一区二区三区 I 日韩制服一区 I 青青草福利在线 I 日本在线观看不卡视频 I 婷婷六月综合亚洲 I 国产又粗又黄又硬 I 美女扒开屁股让男子桶爽 I 欧美性午夜视频观看 I 欧美狠狠插 I 亚洲福利在线观看视频 I 无码抽搐高潮喷水流白浆 I 亚洲欧美国产日韩色伦 I 你懂的视频网站在线观看 I www.蜜桃视频在线观看 I 日本无码人妻精品一区二区蜜桃 I 久久中文字幕人妻丝袜 I 碰草在线视频 I 日韩精品成人av网站

前端渲染HTML與后端渲染HTML的區別

2020/10/30 9:51:06   閱讀:3191    發布者:3191


后端渲染


互聯網早期,用戶使用瀏覽器瀏覽的都是一些沒有復雜邏輯的、簡單的頁面,服務器進程從數據庫獲取數據后,后端的程序在把HTML頁面吐給前端之前,先把HTML頁面上的特定區域、特定符號,先用數據填充,將數據加載進來生成HTML,然后通過網絡傳輸到用戶的瀏覽器中解析成可見的頁面。


前端渲染


隨著前端頁面的復雜性提高,前端就不僅僅是普通的頁面展示了,而可能添加了更多功能性的組件,復雜性更大,另外,彼時ajax的興起,使得業界就開始推崇前后端分離的開發模式,即后端不提供完整的HTML頁面,而是提供一些API使得前端可以獲取到JSON數據,然后前端拿到JSON數據之后再在前端進行HTML頁面的拼接,然后展示在瀏覽器上,這就是所謂的前端渲染。
這樣前端就可以專注UI的開發,后端專注于邏輯的開發。代表是現在流行的SPA單頁面應用,例如Vue、React框架,只需要后端給我們提供接口API,前端UI、交互等全在前端進行,前后端只需要約定接口。

前端渲染路線

1. 請求一個HTML
2. 服務端返回一個HTML
3. 瀏覽器下載html里面的JS/CSS文件
4. 等待JS文件下載完成
5. 等待JS加載并初始化完成
6. JS代碼終于可以運行,由JS代碼向后端請求數據(ajax/fetch)
7. 等待后端數據返回

8. 客戶端從無到完整地,把數據渲染為響應頁面


后端渲染路線


1. 請求一個HTML
2. 服務端請求數據(內網請求快)
3. 服務器初始渲染(服務端性能,較快)
4. 服務端返回已經有正確內容的HTML
5. 客戶端請求JS/CSS文件
6. 等待JS文件下載完成
7. 等待JS加載并初始化完成

8. 客戶端把剩下一部分渲染完成(內容小,渲染快)


后端渲染與前端渲染的優缺點對比


SPA


SPA:單頁Web應用(single page web application,SPA),就是只有一張Web頁面的應用,是加載單個HTML 頁面并在用戶與應用程序交互時動態更新該頁面的Web應用程序。

簡單說: Web不再是一張張頁面,而是一個整體的應用,一個由路由系統、數據系統、頁面(組件)系統...組成的應用程序,其中路由系統是非必須的。

大部分的Vue項目,本質是SPA應用,Angular.js、Angular、Vue、React...還有最早的"Pjax"均如此。

SPA時代,主要是在Web端使用了history或hash(主要是為了低版本瀏覽器的兼容)API,在首次請求經服務端路由輸出整個應用程序后,接下來的路由都由前端掌控了,前端通過路由作為中心樞紐控制一系列頁面(組件)的渲染加載和數據交互。

而上面所述的各類框架則是將以:路由、數據、視圖為基本結構進行的規范化的封裝。

最早的SPA應用,由Gmail、Google Docs、Twitter等大廠產品實踐布道,廣泛用于對SEO要求不高的場景中。

SSR


SSR: 服務端渲染(Server Side Render),即:網頁是通過服務端渲染生成后輸出給客戶端。

在SPA之前的時代,我們的Web架構大都是SSR,如:Wordpress(PHP)、JSP技術、JavaWeb...或者DEDECMS、Discuz!等這些程序都是傳統典型的SSR架構,
即:服務端取出數據和模板組合生成html輸出給前端,前端發生請求時,重新向服務端請求html資源,路由也由服務端來控制。

其次,有個概念叫預渲染(Prerendering)。

如果你只是用服務端渲染來改善一個少數的營銷頁面(如 首頁,關于,聯系 等等)的SEO,那你可以用預渲染來實現。
預渲染不像服務器渲染那樣即時編譯HTML,它只在構建時為了特定的路由生成特定的幾個靜態頁面,等于我們可以通過webpack插件將一些特定頁面組件build時就編譯為html文件,直接以靜態資源的形式輸出給搜索引擎。

但實際的商業應用中,大部分時候我們需要的是即時渲染,這也是我們今天討論的主題。


后端渲染優缺點


優點:

前端耗時少,因為后端拼接完了HTML,不需要先下載一堆JS和CSS 后才能看到頁面,瀏覽器只需要直接渲染出來
搜索引擎優化,因為在后端有完整的HTML頁面,所以爬蟲更容易爬取獲得信息,更有利于SEO
無需占用客戶端資源。即解析模板的工作完全交由后端來做,客戶端只要解析標準的HTML頁面即可,這樣對于客戶端的資源占用更少,尤其是移動端,也可以更省電
后端生成靜態化文件。即生成緩存片段,這樣就可以減少數據庫查詢浪費的時間了,且對于數據變化不大的頁面非常高效



缺點:

不利于前后端分離,開發效率低。使用服務器端渲染,則無法進行分工合作,則對于前端復雜度高的項目,不利于項目高效開發
服務器端渲染,則前端一般就是寫一個靜態HTML文件,然后后端再修改為模板,這樣是非常低效的,并且還常常需要前后端共同完成修改的動作
如果后端改了模板,前端還需要根據改動的模板再調節CSS,這樣使得前后端聯調的時間增加
占用服務器端資源,即服務器端完成HTML模板的解析,如果請求較多,會對服務器造成一定的訪問壓力。而如果使用前端渲染,就是把這些解析的壓力分攤了前端,而這里確實完全交給了一個服務器

前端渲染優缺點

優點:

前后端分離,前端專注于前端UI,后端專注于API開發,且前端有更多的選擇性,而不需要遵循后端特定的模板
體驗更好,比如,我們將網站做成單頁Web應用(single page web application,SPA,是加載單個HTML 頁面并在用戶與應用程序交互時動態更新該頁面的Web應用程序)或者部分內容做成SPA,這樣,尤其是移動端,可以使體驗更接近于原生APP
局部刷新,無需每次都進行完整頁面請求
懶加載,如在頁面初始時只加載可視區域內的數據,滾動后再加載其它數據,可以通過 react-lazyload 實現
富交互,使用 JS 實現各種酷炫效果
節約服務器成本,省電省錢,JS 支持 CDN 部署,且部署極其簡單,只需要服務器支持靜態文件即可

缺點:

前端響應較慢,如果是客戶端渲染,前端還要進行拼接字符串的過程,需要耗費額外的時間,不如服務器端渲染速度快
不利于SEO,目前比如百度、谷歌的爬蟲對于SPA都是不認的,只是記錄了一個頁面,所以SEO很差

為什么前端渲染不利于SEO


如果進行了前后端分離,那么前端就是通過JS來修改DOM使得HTML拼接完全,然后再顯示,或者是使用SPA,這樣,SEO幾乎沒有。那么這種情況下如何做SEO優化呢?

SEO(Search Engine Optimization),中文一般譯作:搜索引擎優化。SEO是一種通過了解搜索引擎的運作規則(如何抓取網站頁面,如何索引以及如何根據特定的關鍵字展現搜索結果排序等)來調整網站,以提高該網站在搜索引擎中某些關鍵詞的搜索結果排名

前面我們談到的SPA不利于SEO,因為就目前而言,部分搜索引擎如Google、bing等,它們的爬蟲雖然已經支持執行JS甚至是通過AJAX獲取數據了,但是對于異步數據的支持也還不足。


因為單頁面的情況下的頁面中的很多內容都是根據匹配到的路由動態生成并展示出來的,而且很多頁面內容是通過ajax異步獲取的,網絡抓取工具并不會等待異步請求完成后再行抓取頁面內容,對于網絡抓取工來說去準確模擬相關的行為獲取復合數據是很困難的,它們更擅長對靜態資源的抓取和分析。


主站蜘蛛池模板: www.伊人 | 日本一级大片 | 性视频久久 | 狠狠躁夜夜躁人人爽天天开心婷婷 | 太平公主秘史在线观看 | 欧美成人一区二免费视频软件 | 亚洲爆乳无码一区二区三区 | www.91麻豆| 少妇大叫受不了了爽爽爽摸摸视频 | 亚洲综合国产成人无码 | 野外被强j到高潮免费观看 久草在线免费资源站 | 国产精品美女久久久久 | 午夜在线看片 | 欧美黄色a级片 | 精品无码av人在线观看 | 人妻精品久久无码区 | 亚洲性无码av中文字幕 | 久久99热狠狠色精品一区 | 欧美成人免费一区二区三区视频 | 亚洲精品77777 | 欧美日韩在线视频播放 | 无码国内精品久久人妻蜜桃 | 无码专区人妻丝袜 | 天天拍天天爽 | 国产日产亚洲精品 | 欧美精品v | 亚洲中文无码av永久伊人 | 国产无遮挡裸露视频免费 | 欧美成人免费视频一区二区 | 手机毛片在线 | 再深点灬舒服灬太大了av网站 | 国产成人精品999在线观看 | 日韩在观看线 | 国产在线资源站 | 久久综合伊人 | 欧美精品一区二区三区蜜桃视频 | 欧美成人午夜免费影院手机在线看 | 少妇人妻久久无码专区 | 无码专区狠狠躁躁天天躁 | 美女吸乳羞羞视频网站 | 果冻传媒色av国产在线播放 | 呦系列视频一区二区三区 | 又黄又爽又猛1000部a片 | 天干夜天天夜天干天 | 亚洲国产精品无码中文字app | 国产欧美日韩一区二区三区在线 | 国产让女高潮的av毛片 | 毛片观看网站 | av综合网站 | 亚洲日韩一区二区三区 | 亚洲夜夜爱 | 亚洲小说区图片区另类春色 | 99c视频色欲在线 | 视频一区在线观看 | 午夜性刺激免费看视频 | 亚洲婷婷六月的婷婷 | 777久久久免费精品国产 | 99久久国产综合精品女同图片 | 久久久久久综合岛国免费观看 | 丝袜国产一区av在线观看 | 狠狠色噜噜狠狠狠狠色综合久 | 人人艹人人 | 久久成人人人人精品欧 | 成人免费视频网站 | 看黄网站在线观看 | 人人艹人人爽 | a三级黄色片| 少妇厨房愉情理伦片bd在线观看 | 五月婷av | 色xxx| 国产精品久久久久久久久久久久久久久 | 中文字幕高清 | 黑人猛挺进小莹的体内视频 | 国产精品6999成人免费视频 | 欧美一区二区三区激情视频 | 国产精品原创巨作av女教师 | 欧美视频在线看 | av毛片在线免费看 | 毛茸茸熟妇丰满张开腿呻吟性视频 | 国产偷国产偷亚洲高清人乐享 | 91色吧 | 国产精品导航一区二区 | 伊人精品无码一区二区三区电影 | 成人免费视频毛片 | 一区二区三区美女 | 日本真人边吃奶边做爽电影 | 天天躁躁水汪汪人碰人 | 久久精品无码一区二区三区不卡 | 玖玖资源站亚洲最大的网站 | 欧美成人精品一区二区三区在线观看 | 综合五月激情二区视频 | 国产啪精品视频网站丝袜 | 国产精品免费一区二区区 | 亚洲无线码在线一区观看 | 青乐娱精品视频一国产分类 | 黄瓜视频91 | 精品毛片一区二区 | 免费体验区试看120秒 | 狼色精品人妻在线视频 |