node学习第一天笔记
node学习第一天笔记
本文讲解的是了解node,node特点,适合做什么,node安装,http模块等。
1、了解node
- V8引擎本身就是用于Chrome浏览器的JS解释部分。
- Node.js是一个让JavaScript运行在服务器端的开发平台,它让JavaScript的触角伸到了服务器端, Node.js不是一种独立的语言,与PHP、JSP、Python、Perl、Ruby的“既是语言,也是平台”不同,Node.js的使用JavaScript进行编程,运行在JavaScript引擎上(V8)。
- 与PHP、JSP等相比(PHP、JSP、.net都需要运行在服务器程序上,Apache、Naginx、Tomcat、IIS。
),Node.js跳过了Apache、Naginx、IIS等HTTP服务器,它自己不用建设在任何服务器软件之上Node.js的许多设计理念与经典架构(LAMP = Linux + Apache + MySQL + PHP)有着很大的不同,可以提供强大的伸缩能力。一会儿我们就将看到,Node.js没有web容器。 - Node.js自身哲学,是花最小的硬件成本,追求更高的并发,更高的处理性能。
2、node的特点
- 单线程,单线程的好处,减少了内存开销,操作系统的内存换页。 如果某一个事情,进入了,但是被I/O阻塞了,所以这个线程就阻塞了。
- 非阻塞I/O, 不会傻等I/O语句结束,而会执行后面的语句。
- 事件机制,事件环,不管是新用户的请求,还是老用户的I/O完成,都将以事件方式加入事件环,等待调度。
3、node适合开发什么?
Node.js适合用来开发什么样的应用程序呢?
善于I/O,不善于计算。因为Node.js最擅长的就是任务调度,如果你的业务有很多的CPU计算,实际上也相当于这个计算阻塞了这个单线程,就不适合Node开发。
当应用程序需要处理大量并发的I/O,而在向客户端发出响应之前,应用程序内部并不需要进行非常复杂的处理的时候,Node.js非常适合。Node.js也非常适合与web socket配合,开发长连接的实时交互应用程序。
比如:
● 用户表单收集
● 考试系统
● 聊天室
● 图文直播
● 提供JSON的API(为前台Angular使用)
4、node的安装
1、先登录node的官网:[http://nodejs.cn/],然后点击下载,跳到下载页面,根据自己电脑装的系统下载响应的node安装包(node下载链接地址:[http://nodejs.cn/download/])
双击node进行安装:
下面进行环境配置:
- 先在计算机中右击–选择属性–弹出相应的控制面板:
- 找到node安装的路径:
- 新建环境变量,配置相应的环境变量:
- 在系统变量中找到Path,并双击–弹出相应的系统环境变量编辑框
- 验证配置的还击变量是否成功:
在电脑全局搜索框中输入cmd,并按回车键–双击cmd.exe–弹出cmd运行的窗口:
5、HTTP模块
Node.js没有根目录的概念,因为它根本没有任何的web容器!
Node.js中,将很多的功能,划分为了一个个mudule。
Node.js是服务器的程序,写的js语句,都将运行在服务器上。返回给客户的,都是已经处理好的纯html。
例子:
1. 创建一个01_HelloWorld.js:
//require表示引包,引包就是引用自己的一个特殊功能
var http = require("http");
//创建服务器,参数是一个回调函数,表示如果有请求进来,要做什么
var server = http.createServer(function(req,res){//req表示请求,request; res表示响应,response//设置HTTP头部,状态码是200,文件类型是html,字符集是utf8res.writeHead(200,{"Content-type":"text/html;charset=UTF-8"});res.end("哈哈哈哈,我买了一个iPhone" + (4+4) + "s");
});//运行服务器,监听8989端口(端口号可以任改)
server.listen(8989,"127.0.0.1");
2.在相应的目录下的空白地方–右击–在此处打开命令窗口–弹出相应的窗口(或者安装shift键并右击–在此处打开命令窗口)–输入node 01_HelloWorld.js,并按回车键,会发现光标一闪一闪,这是服务器挂起状态,如果你到浏览器中运行监听的端口,这样就会显示你想要的内容
标签:
相关文章
-
无相关信息