爲何如今又流行服務端渲染html?

由於解決不了SEO的問題。php

 

在這個問題上我是吃了大虧的。
最先3年前創業的時候就面臨一個選擇,先後端分離仍是服務器端渲染?前端

先後端分離的好處太多了,後端提供的API簡單,乾淨,通用,Android和iOS端均可以用。前端開發效率高,解藕容易,整個項目徹底並行開發。java

 

而服務器端渲染惟一的好處就是SEO,那麼我須要SEO嗎?不禁自主的想起來了淘寶,以及你們都在喊着移動爲王。node

 

因此從偏技術的角度,我決定了使用先後端分離的方式,我想,技術問題,總會有技術來解決。ajax

 

而後運轉不到3個月,就直接發現了問題所在。來自搜索引擎的流量,仍是過重要了。即使是在日漸衰弱的時候,仍是足以決定一家中小公司的生死。算法

而項目上天天100多篇的原創內容,就這樣根本沒機會帶來任何流量。後端

同時維護3端的代價又太大,APP端的運營推廣太難,又不太合適修真院提倡的編碼優先的場景。服務器

 

因此咬牙幾回,都不太敢切換技術路線,只可以分拆模塊,將前端的歸前端,將後端的歸後端,不須要SEO的,像須要登陸才能訪問的,就用先後端分離,不須要登陸的,就用服務器端渲染。前端工程師

 

仔細看了一下技術點的解決方案,沒一個滿意的,搞那麼複雜的技術,只是讓前端人員作後端渲染嗎?還不如直接生成JSP方便快捷。架構

 

可是這不表明着又流行服務器端渲染了,仍是那句話,前端的歸前端,後端的歸後端。

 

若是搜索引擎對ajax的解析,或者是對sitemap的支持足夠好了,先後端分離是必須的。

 

另外再說一些容易混淆的概念,
動靜分離不是先後端分離,動和靜最有意義的區別就是是否須要重啓,簡單說,須要重啓才能更新的代碼,均可以成爲是動態代碼。你只要維護系統一段時間,就明白重啓服務這種體驗有多差。

因此通常jsp這些東西 都是能夠獨立部署更新,不要重啓,但又牽涉到版本管理的問題。

 

大前端指的不是前端懂後端,而是js,iOS,Android橫向打通,這是很符合前端人員發展路線的技術棧。

 

全棧工程師本質上就是全菜工程師,像處處喊的作前端怎麼能夠不懂一點後端的觀點沒有錯,你懂一點算法,架構,大數據都沒問題,但不要本身騙本身,認爲懂就是全棧工程師了。跟猴子穿衣戴帽沒什麼區別,再多前端的人不喜歡聽,我仍是要這麼說。

 

若是你真正想學後端,就忘了本身是一個前端工程師,先後端的思惟方式徹底不一樣,就算是angular這種神器,寫前端代碼和作後端架構要考慮的點也徹底不同。想知道後端架構師到底須要考慮什麼的,請自行查找修真院專欄文章。

 

我本身只敢說本身是後端工程師,說本身是架構師都臉紅,歷來不敢說本身是前端工程師,更不敢自稱全棧。

 

還有,一切用異構語言中轉的服務器端渲染都是脫褲子放屁。

php中轉,nodejs中轉,Python中轉,lua中轉,這些項目我都接觸過,沒有半點意義和價值,只會讓系統更復雜。

 

會有人說後端接觸一點對理解前端有幫助,這個不反對,可是不表明就是要用js作後端。

 

因此,最終的結論就是,技術是要解決問題的,從架構上來說,先後端分離讓系統更簡單,開發進度更快,但遇到的SEO是一個難關。

 

各類解決方案對比之下,仍是java的jsp直接渲染更簡潔。

前端的歸前端,後端的歸後端。

相關文章
相關標籤/搜索