paip.最好的腳本語言node js 環境搭建鏈接mysql php
#====下載node...走十一個exe..容易的.. 1前端
1. ##--調用 (載入文件模塊---普通文件模塊 3python
2. ) 3mysql
4. ##----3、載入文件目錄模塊 3github
5. ##--4、載入node_modules裏的模塊 4web
#-------------調試node-inspector/eclipse /webstorm 7
6. 不要特意ide view..hh,這個比php,python要好. 8
7. node.js, 高併發(最重要的優勢)(都是異步調用) 8
10. 總而言之,NodeJS適合運用在高併發、I/O密集、少許業務邏輯的場景 9
17. 3. 可靠性低,一旦代碼某個環節崩潰,整個系統都崩潰 9
18. 4. 開源組件庫質量良莠不齊,更新快,向下不兼容 10
19. 5. Debug不方便,錯誤沒有stack trace 10
--ide webstorm 1、IDE:Webstorm,沒有其餘。 10
我選擇了.EXE文件。由於.MSI安裝文件除了將node.exe複製到C:\Program File (x86)\目錄中及修改系統Path以外,沒發現還有其餘做用。
爲容易的,不個node放的個windows哈面兒,走不要添加到個path蘭..
Node版本
C:\>node -v
v0.10.28
hello.js文件,而後在裏面輸入:
var sys = require("sys");
sys.puts("Hello world");
而後咱們在命名臺中輸入命令node hello.js,就能看到命名臺輸出結果Hello world。
做者 老哇的爪子 Attilax 艾龍, EMAIL:1466519819@qq.com
轉載請註明來源: http://blog.csdn.net/attilax
每一個模塊都會暴露一個公開的API。以便開發者能夠導入。如
var mod = require('module_name')
##--mode1.js
function meth1(name) {
console.log('hello, '+ name);
}
exports.meth1 = meth1;
注意,這裏忽略了擴展名「.js」,也可使用擴展名,絕對路徑也能使用.
var h = require('./mode1');
h.meth1('snandy');
Node的內置模塊被編譯爲二進制形式,引用時直接使用名字而非文件路徑。當第三方的模塊和內置模塊同名時,內置模塊將覆蓋第三方同名模塊。所以命名時須要注意不要和內置模塊同名。如獲取一個http模塊
1
var http = require('http')
能夠直接require一個目錄,假設有一個目錄名爲folder,如
1
var myMod = require('./folder')
此時,Node將搜索整個folder目錄,Node會假設folder爲一個包並試圖找到包定義文件package.json。若是folder目錄裏沒有包含package.json文件,Node會假設默認主文件爲index.js,即會加載index.js。若是index.js也不存在,那麼加載將失敗。
若是模塊名不是路徑,也不是內置模塊,Node將試圖去當前目錄的node_modules文件夾裏搜索。若是當前目錄的node_modules裏沒有找到,Node會從父目錄的node_modules裏搜索,這樣遞歸下去直到根目錄。
沒必要擔憂,npm命令可以讓咱們很方便的去安裝,卸載,更新node_modules目錄。
正常的使用npm奏能下載..走十俄的不能.只好手動下載..
node網站module>>>https://www.npmjs.org/>> search mysql >>https://github.com/felixge/node-mysql>>download zip 格式..
search mysql的時候兒能看見一瓦依賴庫雅要下載了..
安裝::: upzip>>更名to module name..>>>放得個"C:\\Program Files\\nod
ejs\\node_modules哈面兒..也能放的個%root%/node_modules哈面兒....走十C:/node_modules
韓式新不上的哪狗processmonitor 查看給掛 .
node網站module>>>https://www.npmjs.org/>> search mysql >>https://github.com/felixge/node-mysql>>download zip 格式..
search mysql的時候兒能看見一瓦依賴庫雅要下載了..
///bignumber.js core-util-is inherits isarray readable-stream require-all
var sys = require("sys");
sys.puts("Hello world");
sys.puts("Hello aaa");
sys.puts("Hello bbbb");
var h = require('./mode1');
h.meth1('snandy');
//require('C:\\node_modules')
// 加載 mysql module
var mysql = require("mysql");
var dataBaseLinkInfo = {
"host": '127.0.0.1',
"database": 'dbc8',
"port": 3306,
"user": 'root',
"password": ""
}
var connection = mysql.createConnection(dataBaseLinkInfo);
connection.connect();
connection.query('SELECT * FROM grejx_def limit 2', function selectCb(err, rows, fields) {
if (err) {
throw err;
}
console.log(rows);
sys.puts("---------------------------------------Hello bbbb");
// console.log(fields);
})
connection.end();
Npm是下載庫的...把msi裏面一達了...走十俄的不一塊兒,下李另外一個纔到個一塊兒了..
走十%node_install%/node_modules 哈的一個npm目錄..
調用的時候兒內個npm 是個 %node_install%/npm.bat
實際執行的十這個::
"C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nod
ejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "node-inspector"
走十俄的不能自動安裝模塊,有錯誤了.子能手動安裝蘭..
node.js自己支持調試(gdb也是,很差用.),在語句前面加debugger指令就能夠添加一個斷點
在啓動服務的時候添加debug 選項
node debug index.js
二、執行時候,報錯「Error: Cannot find module 'mysql'」
三、解決方法:在環境變量裏面添加NODE_PATH設置,路徑爲:C:\Users\chezg\node_modules,即mysql模塊的安裝路徑
單進程,單線程(使用消息方式,erlang也是)
總結一下NodeJS是怎麼解決併發鏈接這個問題的:更改鏈接到服務器的方式,每一個鏈接發射(emit)一個在NodeJS引擎進程中運行的事件(Event),放進事件隊列當中,而不是爲每一個鏈接生成一個新的OS線程(併爲其分配一些配套內存)
轉: PayPal爲何從Java遷移到Node.js,性能提升一倍,文件代碼減小44%
在這張圖上你能夠看到node.js應用的優點:每秒請求數量是Java的兩倍。不過更有意思的是咱們僅使用了單核的node去跟5核的Java來對比,咱們很是但願未來繼承擴大node.js的優點。
渲染相同的頁面,node.js節省了35%的時間。即每一個頁面節約了200豪秒,用戶能夠清楚地感受到這樣的區別。
這兩點比杞php差的太員..
CPU密集型應用給Node帶來的挑戰主要是:因爲JavaScript單線程的緣由,若是有長時間運行的計算(好比大循環),將會致使CPU時間片不能釋放,使得後續I/O沒法發起;
解決方案:分解大型運算任務爲多個小任務,使得運算可以適時釋放,不阻塞I/O調用的發起;
緣由:單進程,單線程
解決方案:(1)Nnigx反向代理,負載均衡,開多個進程,綁定多個端口;
(2)開多個進程監聽同一個端口,使用cluster模塊;
有人說debug成本高,這要取決於你使用什麼開發工具了,推薦webstorm,能夠對Node.js程序進行單步調試
茴香豆的茴,有N種寫法。因此,專家告訴咱們,處理異步流程,除了回調函數方式外,還有事件方式、訂閱發佈模式、Promise。個人答案只有一個,Promise,in Q.js。
如今的狀態..node.js是不能代替php的...php仍是web的王者..王者.
參考
nodejs調試的幾種方法,node-inspector能夠着重看看 - terrychinaz的專欄 - 博客頻道 - CSDN.NET.htm
Node.js的模塊載入方式與機制 - snandy - 博客園.htm
Node.js Cannot find module 'xxx' 問題解決 - freeman983 - ITeye技術網站.htm
impt (nodejs)nodejs鏈接mysql遇到的問題與解決方法 - bimarcher的專欄 - 博客頻道 - CSDN.NET.htm
Impt nodejs調試的幾種方法,node-inspector能夠着重看看 - terrychinaz的專欄 - 博客頻道 - CSDN.NET.htm