999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Node的Web應用產(chǎn)品化性能提升

2017-10-17 09:25:44邵晨龍江雪
科學與財富 2017年27期

邵晨龍+江雪

摘要:當前基于Node的Web應用得到了廣泛的關注和應用,但這類應用增長速度之快,導致的產(chǎn)品化性能問題往往容易被忽視。本文主要通過動靜分離、啟用緩存、多進程架構、讀寫分離四個方面來說明如何針對基于Node的Web應用作性能提升。

關鍵詞:Node;產(chǎn)品化;性能優(yōu)化

1 引言

對于基于Node的Web應用而言,最直接有效的提升性能的方法莫過于動靜分離、啟用緩存、多進程架構和讀寫分離。一般地,提升性能遵循的原則可以拆分為:做專一的事;讓擅長的工具做擅長的事情;將模型簡化;將風險分離。

2 性能提升方法

2.1 動靜分離

在普通的Web應用中,Node盡管也能通過中間件來實現(xiàn)靜態(tài)文件服務,但是Node處理靜態(tài)文件的能力并不算突出。因此,在Node應用中通常是將發(fā)往服務器的請求分為兩種:一種是動態(tài)服務請求,一種是靜態(tài)文件請求。將動態(tài)服務請求和靜態(tài)文件請求分離后,Node服務器可以專注在動態(tài)服務方面,而對于圖片、腳本、樣式表和多媒體等靜態(tài)文件都引導到專業(yè)的靜態(tài)文件服務器上,如Nginx或者專業(yè)的CDN,由它們來處理這個過程,就符合了“讓擅長的工具做擅長的事情”這一原則。同時,專業(yè)的CDN會將靜態(tài)文件與用戶盡可能地靠近,并能夠提供更精確和高效的緩存機制。靜態(tài)文件請求分離后,對靜態(tài)請求使用不同的域名或多個域名還能消除掉不必要的Cookie傳輸和瀏覽器對下載線程數(shù)的限制。

靜態(tài)文件請求和動態(tài)服務請求分離只是最簡單的分離,也比較容易實現(xiàn)。事實上還有更復雜的情況,比如一個網(wǎng)頁中同時存在動態(tài)數(shù)據(jù)和靜態(tài)內(nèi)容,在Node中將內(nèi)容發(fā)送至客戶端時需要進行字符串到Buffer的轉換,但是對于靜態(tài)內(nèi)容而言無須進行字符串層級的替換,只要保留成Buffer即可。直接進行Buffer傳輸可以很大程度上提升性能。是故能夠在動態(tài)內(nèi)容中再將動態(tài)內(nèi)容和靜態(tài)內(nèi)容分離,還能進一步提升性能,但這種程度上的控制沒有普適性,需要較多的細節(jié)處理。

2.2 啟用緩存

提升性能其實差不多只有兩個途徑,一是提升服務的速度,二是避免不必要的計算。前者提升的性能在海量流量面前終有瓶頸,但后者卻能夠在訪問量越大時收益越多。避免不必要的計算,應用場景最多的就是緩存。

盡管同步I/O在CPU等待時浪費的時間較為嚴重,但是在緩存的幫助下,卻能夠消減同步I/O帶來的時間浪費。但不管是同步I/O還是異步I/O,避免不必要的計算這條原則如果遵循得較好,性能提升是顯著的。

如今,Redis或Memcached幾乎是Web應用的標準配置。如果產(chǎn)品需要應對巨大的流量,啟用緩存并應用好它,是突破系統(tǒng)性能瓶頸的關鍵。

2.3 多進程架構

通過多進程架構,不僅可以充分利用多核CPU,更是可以建立機制讓Node進程更加健壯,以保障Web應用持續(xù)服務。由于Node是通過自由模塊構建HTTP服務器的,不像大多數(shù)服務器端技術那樣有專有的Web容器,所以需要開發(fā)者自己處理多進程的管理。不過在官方已經(jīng)有cluster模塊,在社區(qū)也有pm、forever、pm2這樣的模塊用于進程管理。

2.4 讀寫分離

除了動靜分離外,另一個較為重要的分離是讀寫分離,這主要針對數(shù)據(jù)庫而言。就任意數(shù)據(jù)庫而言,讀取的速度遠遠高于寫入的速度。而某些數(shù)據(jù)庫在寫入時為了保證數(shù)據(jù)一致性,會進行鎖表操作,這同時會影響到讀取的速度。某些系統(tǒng)為了提升性能,通常會進行數(shù)據(jù)庫的讀寫分離,將數(shù)據(jù)庫進行主從設計,主數(shù)據(jù)庫提供寫操作,從數(shù)據(jù)庫提供讀操作,這樣讀數(shù)據(jù)操作不再受到寫入的影響,有效地減輕了數(shù)據(jù)庫的壓力,也能減輕io壓力。

3 總結

通過本文描述的這些提升性能的方式,能幫助優(yōu)化基于Node的Web應用,使得應用更加高效、健壯。

主站蜘蛛池模板: 成人蜜桃网| 国产精品熟女亚洲AV麻豆| 国产人成在线观看| 国产欧美日韩精品第二区| 97人妻精品专区久久久久| 国产国语一级毛片| 国产jizzjizz视频| 亚洲av综合网| 欧美综合成人| 欧美视频免费一区二区三区| 在线毛片免费| 精品午夜国产福利观看| 欧美一级特黄aaaaaa在线看片| 又爽又黄又无遮挡网站| 亚洲中文字幕久久无码精品A| 亚洲欧美日韩精品专区| 亚洲欧美一区二区三区麻豆| 3D动漫精品啪啪一区二区下载| 欧美伦理一区| 福利在线不卡| 成人噜噜噜视频在线观看| 国产亚洲精品va在线| 91精品亚洲| 伊人网址在线| 成人午夜天| 国产精品综合色区在线观看| 精品久久高清| 午夜精品久久久久久久99热下载 | 九色国产在线| 亚洲日本韩在线观看| 无码人中文字幕| 干中文字幕| 中文一级毛片| 看看一级毛片| 亚洲视频一区| 就去吻亚洲精品国产欧美| 99久久成人国产精品免费| 成人福利在线看| 伊人久久综在合线亚洲2019| 2019年国产精品自拍不卡| 伊人激情综合网| 丁香婷婷久久| 亚洲成a人片在线观看88| 国产肉感大码AV无码| 538精品在线观看| 欧美一区二区精品久久久| AV色爱天堂网| 日韩午夜片| 毛片在线播放网址| 91免费国产在线观看尤物| 国产精品午夜福利麻豆| 视频在线观看一区二区| 国产亚洲精| 蜜芽国产尤物av尤物在线看| 国产高清精品在线91| 国内精品久久久久鸭| 国产白浆在线观看| 国产成人凹凸视频在线| 久久影院一区二区h| 久久精品人人做人人综合试看| www.亚洲一区| 福利片91| 亚洲国产精品一区二区第一页免 | 青草视频免费在线观看| 一本二本三本不卡无码| 成人在线不卡视频| 国产精品亚洲一区二区三区z | 亚洲一级色| 日韩亚洲高清一区二区| 中文字幕亚洲综久久2021| 国产精品无码一区二区桃花视频| 亚洲国产成人久久精品软件| 亚洲自偷自拍另类小说| 亚洲第一成年网| 国产精品香蕉在线| 99热这里只有免费国产精品| 国产成人1024精品下载| 人妻免费无码不卡视频| 国产午夜看片| 国产一级精品毛片基地| 激情综合五月网| 国产小视频a在线观看|