日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

阿里云api網(wǎng)關(guān)中,默認(rèn)調(diào)用api的流控限制 阿里云api網(wǎng)關(guān) 收費標(biāo)準(zhǔn)

>最近關(guān)于 Serverless 的討論越來越多 ??此婆c前端關(guān)系不大的 Serverless , 其實早已和前端有了頗深淵源 , 并且將掀起新的前端技術(shù)變革 。此次分享根據(jù)個人理解和總結(jié) , 從前端開發(fā)模式在serverless的演進(jìn)、Serverless 常見服務(wù)商提供的解決方案以及 基于Serverless 的前端開發(fā)模式等方面 , 與大家探討 Serverless 中的前端開發(fā)模式 。
一、前端開發(fā)模式的演進(jìn)

阿里云api網(wǎng)關(guān)中,默認(rèn)調(diào)用api的流控限制 阿里云api網(wǎng)關(guān) 收費標(biāo)準(zhǔn)


image.png
首先回顧一下前端開發(fā)模式的演進(jìn) , 我覺得主要有四個階段 。。1、基于模板渲染的動態(tài)頁面
2、基于 AJAX 的前后端分離
3、基于 Node.js 的前端工程化
4、基于 Node.js 的全棧開發(fā)
基于模板渲染的動態(tài)頁面在早起的互聯(lián)網(wǎng)時代 , 我們的網(wǎng)頁很簡單 , 就是一些靜態(tài)或動態(tài)的頁面 , 主要目的是用來做信息的展示和傳播 。這個時候開發(fā)一個網(wǎng)頁也很easy , 主要就是通過 JSP、PHP 等技術(shù)寫一些動態(tài)模板 , 然后通過 Web Server(nginx , apache) 將模板解析成一個個 HTML 文件 , 瀏覽器只負(fù)責(zé)渲染這些 HTML 文件 。這個階段還沒有前后端的分工 , 通常是后端工程師順便寫了前端頁面 。
JSP: Java Server Page: Java服務(wù)端頁面 , 在html頁面中編寫Java代碼的頁面
WebServer:網(wǎng)站服務(wù)器或web服務(wù)器
基于 AJAX 的前后端分離2005 年 AJAX 技術(shù)的正式提出 , 翻開了 Web 開發(fā)的新篇章 。基于 AJAX , 我們可以把 Web 分為前端和后端 , 前端負(fù)責(zé)界面和交互 , 后端負(fù)責(zé)業(yè)務(wù)邏輯的處理 。前后端通過接口進(jìn)行數(shù)據(jù)交互 。我們也不再需要在各個后端語言里面寫著難以維護(hù)的 HTML 。網(wǎng)頁的復(fù)雜度也由后端的 Web Server 轉(zhuǎn)向了瀏覽器端的 JavaScript 。也正因如此 , 開始有了前端這個職位 。
基于 Node.js 的前端工程化2009年 Node.js 的出現(xiàn) , 對于前端來說 , 也是一個歷史性的時刻 。隨著 Node.js 一同出現(xiàn)的還有 CommonJS 規(guī)范和 npm 包管理機(jī)制 。隨后也出現(xiàn)了 Grunt、Gulp、Webpack 等一系列基于 Node.js 的前端開發(fā)構(gòu)建工具 。
在 2013 年前后 , 前端三大框架 React.js/Angular/Vue.js 相繼發(fā)布第一個版本 。我們可以從以往基于一個個頁面的開發(fā) , 變?yōu)榛谝粋€個組件進(jìn)行開發(fā) 。開發(fā)完成后使用 webpack 等工具進(jìn)行打包構(gòu)建 , 并通過基于 Node.js 實現(xiàn)的命令行工具將構(gòu)建結(jié)果發(fā)布上線 。前端開發(fā)開始變得規(guī)范化、標(biāo)準(zhǔn)化、工程化 。
基于 Node.js 的全棧開發(fā)Node.js 對前端的重要意義還有 , 以往只能運行在瀏覽器中的 js 也可以運行在服務(wù)器上 , 前端可以用自己最熟悉的語言來寫服務(wù)端的代碼 。于是前端開始使用 Node.js 做全棧開發(fā) , 開始由前端向全棧的方向轉(zhuǎn)變 。這是前端主動突破自己的邊界 。
另一方面 , 前端在發(fā)展 , 后端也在發(fā)展 。也差不多在 Node.js 誕生那個時代 , 后端普遍開始由巨石應(yīng)用模式向微服務(wù)架構(gòu)轉(zhuǎn)變 。這也就導(dǎo)致以往的前后端分工出現(xiàn)了分歧 。隨著微服務(wù)架構(gòu)的興起 , 后端的接口漸漸變得原子性 , 微服務(wù)的接口也不再直接面向頁面 , 前端的調(diào)用變得復(fù)雜了 。于是 BFF(Backend For Frontend)架構(gòu)出現(xiàn)了 , 在微服務(wù)和前端中間 , 加了一個 BFF 層 , 由 BFF 對接口進(jìn)行聚合、裁剪后 , 再輸出給前端 。而 BFF 這層不是后端本質(zhì)工作 , 且和前端的關(guān)系最大 , 所以前端自然而然選擇了 Node.js 來實現(xiàn) 。這也是當(dāng)前 Node.js 在服務(wù)端較為廣泛的應(yīng)用的原因 。

推薦閱讀