<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          rrestjs高性能node.js開發(fā)框架

          聯(lián)合創(chuàng)作 · 2023-09-23 18:42

          rrest.js是一款基于expressjs代碼開發(fā)的高性能node.js開發(fā)框架,由于重新編寫了框架組織架構(gòu),比expressjs整體性能提升大約10%,實(shí)用功能也更加豐富,API和代碼風(fēng)格相比expressjs更簡(jiǎn)單易懂。

          rrestjs有以下幾個(gè)亮點(diǎn): 
          1、Restful模式:去掉了expressjs的app.get()路由機(jī)制,重新拆分客戶端請(qǐng)求的uri,直接加載指定模塊和執(zhí)行模塊內(nèi)的方法,如果出錯(cuò)輸出500或404。比如用戶訪問(wèn)/user/face,訪問(wèn)頭像頁(yè)面,則rrestjs會(huì)根據(jù)拆分的uri去指定目錄require('user')模塊,然后執(zhí)行face方法,省去了正則路由判斷,提升性能。
          2、原生node.js的API風(fēng)格:沒有expressjs自己封裝的app.use等等,輸出一個(gè)helloworld只需如下代碼,降低了學(xué)習(xí)新代碼風(fēng)格的成本:
          var http = require('http'),
          rrest = require('rrestjs'),
          server = http.createServer(rrest(function (req, res) {
          res.end('hello world');
          })).listen(3000);
          3、開發(fā)模式自動(dòng)保存重啟:在開發(fā)模式下,支持像PHP那樣的寫代碼,保存自動(dòng)重啟,放棄ctrl+c 然后 上+enter。
          4、多進(jìn)程共享session:多進(jìn)程可以共享保存在內(nèi)存中的session數(shù)據(jù),而且以后部署上生產(chǎn)環(huán)境,只需加載不同配置文件,無(wú)需改動(dòng)代碼即可支持mongodb的session存儲(chǔ)
          5、提高靜態(tài)文件輸出性能:expressjs在靜態(tài)文件輸出上由于加上etag或last-modify緩存,需要2次I/O操作,rrestjs在此基礎(chǔ)上做了2級(jí)緩存,減少一次I/O操作,性能提升10%。
          6、多進(jìn)程多任務(wù)管理:可以讓多進(jìn)程監(jiān)聽多端口,做不同業(yè)務(wù),由一個(gè)守護(hù)進(jìn)程守護(hù),萬(wàn)一發(fā)現(xiàn)子進(jìn)程意外掛掉,可以馬上喚醒它,并且還是繼續(xù)監(jiān)聽之前的端口和做之前的業(yè)務(wù)。
          7、封裝了mongodb連接池:封裝了mongodb的連接池,可以手動(dòng)的設(shè)定連接池的大小,大大提高的效率和穩(wěn)定性。
          8、IP和資源白名單過(guò)濾:增加了白名單功能,方便項(xiàng)目上公網(wǎng)以后的調(diào)試和測(cè)試。
          9、增加jade的html緩存:增加html緩存功能,加速大并發(fā),高I/O的輸出jade模版,同時(shí)設(shè)置了更新緩存鑰匙機(jī)制,防止緩存重建時(shí)的雪崩情況。
          10、增加deflate和gzip:根據(jù)content-type的屬性值,選擇性的使用delate或gzip壓縮數(shù)據(jù)響應(yīng)給客戶端,因?yàn)閳D片的gzip意義不大。
          11、自動(dòng)加載模塊:根據(jù)自動(dòng)加載例外的配置,去自動(dòng)加載modules文件夾下的所有模塊,不必一個(gè)個(gè)require了

          瀏覽 21
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产变态视频a片一二三 | 成人网站在线看。 | 午夜操一操| 国产网站自拍 | 五月天在线欧美日韩在线 |