发布于 2016-08-25 09:39:00 | 203 次阅读 | 评论: 0 | 来源: 网友投递
这里有新鲜出炉的Node.js主要方法使用说明,程序狗速度看过来!
Node.js 服务器端的JavaScript
Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台, 用来方便地搭建快速的 易于扩展的网络应用· Node.js 借助事件驱动, 非阻塞I/O 模型变得轻量和高效, 非常适合 运行在分布式设备 的 数据密集型 的实时应用
node.js的非常大的一个特点就是事件驱动,在开发服务器端服务的时候显得非常方便。昨晚在新浪的@timYang也提到了node.js,估计新浪微博也注意到了它的优点。同时,淘宝最近也表示对node.js有相当的兴趣。参见:http://www.tbdata.org/archives/1285 http://www.tbdata.org/archives/1292 ,为了体验一把,就用node.js写了一个透明的代理服务层,代码如下:
var net = require('net');
var proxyhost="127.0.0.1";//被代理的服务的IP
var proxyport=3306;//被代理的端口
var listenport=8124;//代理端口
net.createServer(function (socket) {
socket.on("connect",function(){
console.log('connected');
try{
var db=net.createConnection(proxyport,proxyhost);
db.on("connect",function(){
console.log("server connected");
socket.on("data", function (data) {
db.write(data);
});
db.on("data",function(data){
console.log(data.toString('utf8',0,data.legnth));
//console.log(data);
socket.write(data);
});
socket.on("close",function(){
console.log("server closed");
db.destroy();
});
});
db.on("error",function(data){
console.log("error:\r\n"+data);
});
db.on("end",function(){
console.log("server closed");
socket.destroy();
});
}catch(err){
console.log(err);
}
});
}).listen(listenport, "0.0.0.0");
//用于测试,生产环境需考虑稳定性代码处理