2017-07-22 63 views
0

我是Node.js的新手。我已經構建了我的第一個Node.js服務器。我正在做一些研究來提高生產中節點js服務器的性能。所以我瞭解了NGINX和流程管理器(PM2)。我們可以同時使用NGINX和PM2進行node.js生產部署嗎?

NGINX:

  1. 它可以負載均衡傳入的請求。
  2. 它可以作爲我們應用程序的反向代理。

PM2:

  1. 它可以將我們的應用程序作爲羣集儘管它有內置的負載平衡器。
  2. 我們可以在崩潰時監視並重新啓動應用程序。

我們可以同時使用兩種產品嗎?

儘管PM2中有負載均衡器,我可以只使用PM2嗎?

使用NGINX比PM2有什麼優勢?

如果我使用負載平衡器使用NGINX和使用PM2進行羣集,它會比僅使用一個(NGINX或PM2)提供更好的性能嗎?

+0

NGINX反向代理代碼的幫助,毫無疑問,也許你只能做與PM2集羣,讓nginx的做他的魔法(有沒有意義負載平衡兩次) –

+0

或者,也可以在單個服務器上使用pm2中的負載均衡器,如果要平衡多個服務器,則使用nginx –

回答

1

這是一個很大的話題,但讓我幫忙,並給你一些指示。

Nginx不僅僅是一個反向代理。它可以服務於static content,can compress the response content,可以在同一虛擬機上的不同端口上運行多個應用程序等等。

PM2基本上可以幫助您通過在集羣模式下運行並利用機箱的所有內核來擴展服務的吞吐量。閱讀此計算器answer以瞭解更多信息。

現在回答你的問題

我們可以同時使用生產?

是的,你應該。 Nginx可以在端口80上運行.PM2可以在端口3000(或任何端口)上運行,然後管理應用程序實例內的流量。

單獨使用gzip會使應用程序最終用戶的性能發生巨大變化。

這裏是萬一good article您需要關於如何設置它

+0

這是有用的信息:) –

相關問題