其实用 node-js 写一个服务端程序 没多大的难度,nodejs 把很多方法 都封装,
其次 nodejs是异步通信架构 轻松实现高并发
如果要用多核处理 包含库 cluster
下面的代码 仅仅是一个 3分钟写出来的 登录案例
访问链接:http://127.0.0.1:8080/select?type1=login&username=csdn&password=123456
我下面的代码没有做 很多判断 比如 sql 匹配 防sql注入 等等 仅是案例 供参考
为什么要用nodejs 做服务器呢 我个人用的原因是 成形快 开发快 基于异步通信 产品仅是 访问服务器的借口 不涉及到大量的运算 Nodejs是个不错的选择
如果涉及到了 大量的数据运算 我个人一般用 C/C++ 编写 基于HTTP协议 如果你们也想要快速开发 推荐 libevent
需要用到的库 mysql 和 redis 缓存 在当前的工程目录下 打开终端 输入 以下命令即可
npm install redis
npm install node-redis
npm install mysql
var http = require('http');
var url = require('url');
var util = require('util');
var sql = require('mysql');
var redis = require('redis');
var SQL_DATABASE = 'test';
var SQL_TABLE ='user';
var client = sql.createConnection({host:'localhost',user:'root',password:'123456',database:'test',port:'3306'});
client.connect();
http.createServer(function(req,res)
{
var params = url.parse(req.url,true).query;
if(params.type1==='login')
{
var user = params.username;
var pwd = params.password;
console.log(req.connection.remoteAddress);
var result = findinfo(user,pwd,res);
}
}
).listen(8080);
function findinfo(user,pwd,res)
{
client.query('SELECT username ,password FROM user where username='+'"'+user+'"'+' and password='+'"'+pwd+'";',function(err,result,fields) {
if(result)
{
for(var i=0;i<result.length;i++)
{
console.log("%s/t%s 5",result[i].username,result[i].password);
res.writeHead(200,{'Content-Type':'hello world','charset':'utf-8'});
res.write("login success");
res.end(); }
}
}
);
}