您的位置:首页 > Web前端 > Node.js

Node.js入门

2018-02-05 17:26 183 查看
一、Node.js简介(对应《Nodejs权威指南》1.1)

Node.js目标:创建简单、高性能、可运行各种应用的开发工具。

Java、PHP、ASP.NET等服务器中,客户端连接2M,8G内存服务器最大用户数4000,同一个用户不同客户端请求可能被不同服务器处理,所有服务器必须共享资源。

Web服务器瓶颈在于服务器支持的最大同时连接用户量。

Node.js不为客户端连接创建新线程,而是触发在Node.js内部的处理事件。

Node.js运行C++语言开发的谷歌高性能V8JavaScript脚本语言(单线程,不会造成死锁),可运行在服务端,不局限在浏览器。

Node.js的机制:非阻塞型I/O(例如:访问数据库到数据库返回结果的这个时间段内不影响后面的代码执行)、事件环(一个时刻只能执行一个事件回调函数,但执行中途可处理其他事件,然后返回继续执行原来的事件回调函数)

Node.js适合开发的应用程序:应用程序需要处理大量的并发I/O,而在应用程序内部的不进行非常复杂的处理,如聊天服务器、综合服务类网站或电子商务服务器。

二、安装

下一步即可,新版集成了npm

三、模块

cmd下npm或者cnpm全局(需设置Node_Path)或本地安装(工程node_Moudle文件夹中),推荐本地安装。

参考:

[u]https://jingyan.baidu.com/article/91f5db1b2bb6941c7f05e33c.html[/u]

[u]https://www.cnblogs.com/PeunZhang/p/5629329.html[/u]

四、实战

可以cmd下node进入node开发(node.js安装时已经设置了一个环境变量),或者node.exe打开,均可可node
xx.js执行node.js文件;

也可在Hbuilder工具中安装nodeeclipse,即可新建node工程,或者JetBrains的webstorm等IDE。

Node.js连接Mysql可参考:

[u]http://www.runoob.com/nodejs/nodejs-mysql.html[/u]

代码:

var http = require('http');

http.createServer(function handler(req, res) {

    res.writeHead(200, {'Content-Type': 'text/plain'});

    res.end('Hello World\n');//http://127.0.0.1:1337/访问

}).listen(1337, '127.0.0.1');//防止因运行进程还在内存导致的端口占用

console.log('Server running at http://127.0.0.1:1337/');
 

var mysql      = require('mysql');//推荐cmd进入本地工程后npm
install mysql

//package.json中dependencies节点中自动加入mysql

var connection = mysql.createConnection({

  host     : 'localhost',

  user     : 'root',

  password : 'root',

  database : 'test'

});

 

connection.connect();

 

connection.query('select * from tb_xuanjiang', function (error, results, fields) {

  if (error) throw error;

  console.log('The solution is: ', results[0].cityName);

});

工程下载:

[u]https://github.com/haoranhaoshi/node.js[/u]

四、扩展

Js全栈开发:node.js写服务端,结合bootstrap写Web,native.js结合mui写webApp,结合node-webkit写webDesktop。

cmd下npm help npm可调取帮助网页,npm ls可显示已经安装的模块。

Node.js框架:

参考:

[u]http://web.jobbole.com/84607/[/u]

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: