總結
優勢 :1. 高併發(最重要的優勢)
2. 適合I/O密集型應用
缺點:javascript
解決方案:分解大型運算任務爲多個小任務,使得運算可以適時釋放,不阻塞I/O調用的發起;html
2. 只支持單核CPU,不能充分利用CPUjava
3. 可靠性低,一旦代碼某個環節崩潰,整個系統都崩潰node
緣由:單進程,單線程git
解決方案:(1)Nnigx反向代理,負載均衡,開多個進程,綁定多個端口;github
(2)開多個進程監聽同一個端口,使用cluster模塊;web
4. 開源組件庫質量良莠不齊,更新快,向下不兼容數據庫
5. Debug不方便,錯誤沒有stack tracenpm
NPM: 全球最大的開源生態系統( 國外的 )
cnpm 淘寶鏡像( 國內的 )
yarn 流行
npm && yarn 所有要配置國內鏡像 ( 百度關鍵字: yarn國內鏡像 )windows
版本的偶數是: 穩定版
使用 nvm 來安裝 ( nvm能夠管理多個Node.js版本 )
nvm有坑: nvm安裝有難度
要求: Node.js安裝最低版本也要8.9以上
文件使用
命令終端退出: Ctrl + c 兩次
$ node 文件名稱.js
$ npm install nodemon -g
$ npm install supervisor -g
$ cnpm install nodemon -g
$ cnpm install supervisor -g
yarn
$ yarn add nodemon global
$ yarn add supervisor global
api服務器( 動態服務器 ) 數據接口
1.引入模塊 var http = require('http'); var hostName = localhost; var port = 8000; 2.建立http請求 http.createServer((req,res)=>{ 3.想後臺發送數據 /*設置頭部*/ res.writeHead(200,{ 'content-type':'text/html;charset=utf8' }) res.write('<h1> hello Node.js </h1>'); res.end(); 4.監聽數據 }).listen(port,hostName,()=>{ console.log(` this server is ruining in: http://${hostName}:${port} `) })