首頁>Club>

vue也可以前後端分離,伺服器用nginx,為什麼要vue + node呢,既然有這種模式,一定有他的道理,有什麼特別的值得這麼做的麼,感覺vue+nginx用起來很簡單,如果vue+node就複雜了

46
回覆列表
  • 1 # 飛舟聊程式設計

    首先我們先要弄懂這三者各是幹什麼的,這樣就能知道在什麼場景下使用。

    Nginx 是一個高效能的 HTTP 、反向代理和 IMAP/POP3/SMTP 伺服器,當然也還有很多其他功能,比如負載均衡、web 快取等。具有佔有記憶體少,併發能力強,穩定性高等優勢。如果非要說 Nginx 要替代誰的話,也應該是替代 Apache 而非 Node。

    而 Vue 不同於前兩個後端的體系,是屬於 web 前端的三大框架之一,是一個漸進式的 JS 框架,主要用於搭建前端的 SPA 應用,也就是 web 頁面。在開發期間,也是建立在 Node 環境下,通過編譯生成瀏覽器端可以識別的語法。

    瞭解完三者的區別後,就來看看相關的應用:

    首先通過 Node 的 Express 框架搭建一個具有 Restful API 的伺服器,用於向前端提供資料支援。

    其次將通過 Vue 開發完畢的前端程式碼打包後,上傳至伺服器,通過配置 Nginx 來實現 web 訪問,大致程式碼:

  • 2 # 程式碼瞬間移動師

    首先糾正一個概念:node是語言,nginx是服務/容器。

    node.js 能做的事java,php能做的更好,那為什麼還要有node.js呢

    node.js的長處在於I/O密集型(資料庫讀寫)應用,node.js天生就是非同步非阻塞的。非同步非阻塞的優點在於能夠在單程序單執行緒處理多個socket I/O,相對於PHP的多程序模式可以減少程序的上下文切換消耗,而且使用的系統資源也會比PHP少。所以在I/O密集型應用中,PHP的併發數可能不如node.js。

    nodejs的 web介面,高併發web介面,nodejs比java、php、python都快得多,不是一點得快,是幾十倍的快,這在實際應用中可非常重要了,尤其是介面響應速度

    nodejs是IO非同步方式,寫過javascript的都知道回撥函式被大量使用,這點php做不到,php處理都是同步執行的,命令必須逐條被執行,nodejs不用的,這樣節省了很多時間,在等待IO處理的時候,可以做其它事情。

  • 3 # 啊哈哈叫啊

    你這問題有道理,確實js和nginx完全夠了還要nodejs幹嘛。但你想想,隨著前端不斷升級,功能要求越來越多,業務越來越複雜,寫的js越來越噁心,維護起來就像盜墓一樣步步驚心。引用巨量js庫對版本小心翼翼維護,在引用各個js庫的時候還要載入一大堆無用的程式碼,畢竟是靜態的,你必須全部載入瀏覽器才能使用,還得根據不同瀏覽器單獨處理,js也不能漂亮的面向物件,複雜的功能只能一行一行的碼,現在覺得node香嗎,簡直前端福音

  • 4 # lynnrui

    簡單不簡單是你個人主觀的看法吧,習慣node的也可以反過來問,這個吃西餐會或吃中餐,和吃早餐還吃晚產的糾結問題,要具體情況具體分析吧。

  • 5 # 速碼爵士

    區別只在於選擇node做的webserver(通常是express)還是nginx。 vue做的spa只是一個靜態資源包而已,如果要伺服器端渲染,比如用vuex,nose server就必須了。

    兩種選擇並不矛盾,有時全都選上更好。比如: 多種後端服務程式執行時,nginx可以放在管道最前面,導流到後面的node server上,nginx做proxy用效率也很高,也是做負載均衡的一種方式。

    如果你的後端程式用java框架,執行在tomcat容器裡,而且是唯一的服務應用,那麼nginx和node都可以扔了不用。

  • 中秋節和大豐收的關聯?
  • 如果不結婚年紀大了住養老院大概要存多少錢?