<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        Node.js的特點和應用場景介紹

        來源:懂視網 責編:小采 時間:2020-11-27 20:25:53
        文檔

        Node.js的特點和應用場景介紹

        Node.js的特點和應用場景介紹:Node.js應該是當今最火熱的技術之一。本文主要介紹Node.js的特點及應用場景。Node.js是一個基于Chrome JavaScript運行時建立的一個平臺,用來方便地搭建快速的 易于擴展的網絡應用。Node.js借助事件驅動,非阻塞I/O模型變得輕量和高效,非常適合 運行在分
        推薦度:
        導讀Node.js的特點和應用場景介紹:Node.js應該是當今最火熱的技術之一。本文主要介紹Node.js的特點及應用場景。Node.js是一個基于Chrome JavaScript運行時建立的一個平臺,用來方便地搭建快速的 易于擴展的網絡應用。Node.js借助事件驅動,非阻塞I/O模型變得輕量和高效,非常適合 運行在分
        Node.js應該是當今最火熱的技術之一。本文主要介紹Node.js的特點及應用場景。

        Node.js是一個基于Chrome JavaScript運行時建立的一個平臺,用來方便地搭建快速的 易于擴展的網絡應用。Node.js借助事件驅動,非阻塞I/O模型變得輕量和高效,非常適合 運行在分布式設備的數據密集型實時應用。

        1. 特點

        1.1 異步I/O

        所謂的異步I/O,是相對同步I/O而言的。程序執行過程中必然要進行很多I/O操作,如讀寫文件、輸入輸出、請求響應等等。通常來說,I/O操作是非常費時的。例如在傳統的編程模式中,你要讀一個幾G的文件,整個線程都暫停下來,等待文件讀完后繼續執行。換言之,I/O操作阻塞了代碼的執行,極大地降低了程序的效率。

        關于異步I/O,其實對于前端工程師來說并不陌生,因為發起Ajax請求就是最常見的一種“異步”調用。在Node中,以讀取文件(讀文件是一種耗時的I/O操作)為例,它與發起Ajax請求的寫法很像:

        var fs = require('fs');
        fs.readFile('/path', function(err, file) {
         console.log('讀取文件完成');
        });
        console.log('開始讀取文件');

        上述代碼在調用fs.readFile后,后續代碼是被立即執行的,“讀取文件完成”的時刻是無法預知的。當線程遇到I/O操作時不會以阻塞的方式等待I/O操作結束,而只是將I/O請求發送給操作系統,繼續執行后續語句。當操作系統完成I/O操作時以事件的形式通知執行I/O操作的線程,線程會在特定時間處理這個事件。

        1.2 事件循環與回調函數

        所謂事件循環是指Node會把所有的異步操作使用事件機制解決,有個線程在不斷地循環檢測事件隊列。事件循環會檢查事件隊列中有沒有未處理的事件,直到程序結束。事件的編程方式具有輕量級、松耦合、只關注事務點等優勢,但是在多個異步任務的場景下,事件與事件之間各自獨立,如何協作是一個問題。在Javascript中,回調函數無處不在,回調函數是最好的接受異步調用返回數據的方式。

        1.3 單線程

        Node保持了JS在瀏覽器中單線程的特點。單線程的最大好處是不用像多線程編程那樣出處在意狀態的同步問題,沒有死鎖的存在,也沒有線程上下文切換的開銷。單線程也有其弱點,主要表現在三方面:無法利用多核CPU;錯誤會引起整個應用退出,應用的健壯性值得考研;大量計算會占用CPU導致無法繼續調用異步I/O。

        為了解決上述問題,Node采用了與HTML5 Web Workers相同的思路,使用child_process來解決但單線程中大計算量的問題。通過將計算分發到各個子進程,可以將大量計算分解掉,然后再通過進程之間的事件消息來傳遞結果。

        1.4 跨平臺

        Node是跨平臺的,即同樣的一套JS代碼都可以部署運行在Windows、Linux、OSX等平臺。這主要得益于Node在操作系統與Node上層模塊系統之間構建了一層平臺層架構libuv。

        Node.js的特點和應用場景介紹

        2. 應用場景

        1)、實時應用:如在線聊天,實時通知推送等等(如socket.io)
        2)、分布式應用:通過高效的并行I/O使用已有的數據
        3)、工具類應用:海量的工具,小到前端壓縮部署(如grunt),大到桌面圖形界面應用程序
        4)、游戲類應用:游戲領域對實時和并發有很高的要求(如網易的pomelo框架)
        5)、利用穩定接口提升Web渲染能力
        6)、前后端編程語言環境統一:前端開發人員可以非??焖俚厍腥氲椒掌鞫说拈_發(如著名的純Javascript全棧式MEAN架構)

        更多Node.js的特點和應用場景介紹相關文章請關注PHP中文網!

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        Node.js的特點和應用場景介紹

        Node.js的特點和應用場景介紹:Node.js應該是當今最火熱的技術之一。本文主要介紹Node.js的特點及應用場景。Node.js是一個基于Chrome JavaScript運行時建立的一個平臺,用來方便地搭建快速的 易于擴展的網絡應用。Node.js借助事件驅動,非阻塞I/O模型變得輕量和高效,非常適合 運行在分
        推薦度:
        標簽: 使用 特點 的特點
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 午夜老司机永久免费看片| 黄色网址在线免费观看| 国产精品视频白浆免费视频| 中文字幕在亚洲第一在线 | 亚洲综合精品网站在线观看| 亚洲精品成人无码中文毛片不卡| 亚洲综合精品成人| 日韩在线免费播放| 国产精品亚洲专区无码不卡| 四虎永久成人免费| 成人精品视频99在线观看免费| 国产成人精品日本亚洲专区| 在线看片免费人成视频久网下载| 亚洲精品国产精品乱码在线观看 | 亚洲日本一区二区三区| a拍拍男女免费看全片| 亚洲中文字幕在线无码一区二区| 国产免费丝袜调教视频| 国产AV旡码专区亚洲AV苍井空| 啦啦啦在线免费视频| 日韩在线观看免费| 亚洲国产精品福利片在线观看| 无码国产精品一区二区免费16 | 亚洲精品第一国产综合亚AV| 国产a级特黄的片子视频免费 | 美国免费高清一级毛片| 77777亚洲午夜久久多人| 999久久久免费精品播放| 亚洲AV无码成人专区| 免费人成视网站在线观看不卡| 91精品成人免费国产| 亚洲三级中文字幕| 亚洲精品A在线观看| 在线成人爽a毛片免费软件| 亚洲中文字幕乱码一区| 久久国产成人亚洲精品影院| 1000部禁片黄的免费看| 国产亚洲欧美在线观看| 久久久综合亚洲色一区二区三区| 毛片a级毛片免费观看免下载| 一个人免费观看www视频|