node

Node 是什么?

  Node 是一个服务器端 JavaScript 解释器,是一门技术

Node 旨在解决什么问题?

  在 Java 和 PHP 这类语言中,每个连接都会生成一个新线程,每个新线程可能需要 2 MB 的配套内存。在一个拥有 8 GB RAM 的系统上,理论上最大的并发连接数量是 4,000 个用户。随着您的客户群的增长,如果希望您的 Web 应用程序支持更多用户,那么,您必须添加更多服务器。

  Node 解决这个问题的方法是:更改连接到服务器的方式。每个连接发射一个在 Node 引擎的进程中运行的事件,而不是为每个连接生成一个新的 OS 线程(并为其分配一些配套内存)。Node 声称它绝不会死锁,因为它根本不允许使用锁,它不会直接阻塞 I/O 调用。

Node 如何工作?

Node 实际上会使用 Google 编写的 V8 JavaScript 引擎(V8 JavaScript 引擎是 Google 用于其 Chrome 浏览器的底层 JavaScript 引擎)

Node 搭建服务器

var http = require("http");
var fs = require("fs");
var querystring = require("querystring");
var url = require("url");
//引入模块
//开启服务
var server = http.createServer();

server.on("request",function(req,res){
	
	var urlObj = url.parse(req.url,true);   //把地址栏格式化成对象

	var pathname = urlObj.pathname;

	var query = urlObj.query;        //获取到url地址栏的参数

	else if(pathname == "/getData" && req.method == "GET" && query.uname){
		fs.readFile("./data/" + query.uname+".json","utf8",function(err,data){
			// res.end(data);
			data = JSON.parse(data);
			var obj = {
				message : "OK",
				data : data
			}
			var str = JSON.stringify(obj);
			res.end(str);
		})
	}else {
		
	}
})

server.listen(3001);
console.log("server running in 127.0.0.1:3001");

  

var server = http.createServer();

// 引入http的模块
var http = require("http");

// 创建一个服务

http.createServer(function(request,response){
	
}).listen(3000)

  常用fs模块

//引入fs模块
var fs = require("fs");

// 异步的创建文件夹
fs.mkdir("./data02",function(err){

 })
// 同步的创建文件夹
 fs.mkdirSync(path[, options])
// 异步读文件夹
 fs.readdir(path[, options], callback).
// 同步的读文件夹
 fs.readdirSync(path[, options])
// 异步判断文件或者文件夹是否存在
 fs.access(path[, mode], callback) 
fs.access("./data",function(err){
})
// 同步判断文件或者文件夹是否存在
fs.accessSync(path[, mode])

  

原文地址:https://www.cnblogs.com/fushuxin/p/10479400.html