本文介紹了Node.js五大應(yīng)用性能技巧,分享給大家,具體如下:
成都創(chuàng)新互聯(lián)于2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢想脫穎而出為使命,1280元河?xùn)|做網(wǎng)站,已為上家服務(wù),為河?xùn)|各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18980820575一、實(shí)現(xiàn)一個(gè)反向代理服務(wù)器
相比大多數(shù)應(yīng)用服務(wù)器,Node.js 可以很輕松的處理大量的網(wǎng)絡(luò)流量,但這并不是 Node.js 的設(shè)計(jì)初衷。
如果你有一個(gè)高流量的站點(diǎn),提高性能的第一步是在你的 Node.js 前面放一個(gè)反向代理服務(wù)器。這可以保護(hù)你的 Node.js 服務(wù)器免于直接暴露在網(wǎng)絡(luò)中,而且可以允許你靈活的使用多個(gè)應(yīng)用服務(wù)器做負(fù)載均衡和靜態(tài)文件緩存。
使用 NGINX 在一個(gè)已經(jīng)存在的服務(wù)器前做反向代理,作為 NGINX 的一個(gè)核心應(yīng)用,已經(jīng)被用于全世界成千上萬的站點(diǎn)中。
下面是使用 NGINX 作為反向代理服務(wù)器的優(yōu)點(diǎn):
簡化了權(quán)限處理和端口分配
更高效的處理靜態(tài)資源
更好的處理 Node.js 崩潰情況
緩解 DoS 攻擊的影響
注:這篇文章解釋如何在 Ubuntu 14.04 或者 CentOS 環(huán)境中使用 NGINX 做反向代理服務(wù)器,而且使用 NGINX 在 Node.js 前做反向代理服務(wù)器是有效的。
二、緩存靜態(tài)文件
隨著流量的增長,以 Node 為基礎(chǔ)的服務(wù)器開始顯現(xiàn)壓力。這時(shí),你可能想做兩件事:
使用更多的 Node.js 服務(wù)器。
在多個(gè)服務(wù)器間做負(fù)載均衡
這其實(shí)很簡單,NGINX 一開始就是作為反向代理服務(wù)器來實(shí)現(xiàn)的,這使其很容易做緩存和負(fù)載均衡等。
Modulus 的網(wǎng)站有一篇有用的文章,介紹了使用 NGINX 做 Node.js 反向代理服務(wù)器的性能提升。只使用 Node.js 時(shí),作者的網(wǎng)站每秒能處理 900 個(gè)請求。 使用 NGINX 作為反向代理服務(wù)器來處理靜態(tài)文件后,該網(wǎng)站每秒可處理超過 1600 個(gè)請求,接近兩倍的性能提升。
下面是該網(wǎng)站做上述性能提升的配置代碼:
nginx
server { listen 80; server_name static-test-47242.onmodulus.net; root /mnt/app; index index.html index.htm; location /static/ { try_files $uri $uri/ =404; } location /api/ { proxy_pass http://node-test-45750.onmodulus.net; } }
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。