nodejs简介

1、node.js能达到高并发

java编写的web程序,当用户访问程序时候,开启一个新的线程,一个线程大约占2m,8g的内存,理论上可以连接4000用户,但是nodejs不是为每个用户创建一个线程,而是为每个用户触发一个在nodejs内部的一个处理事件,这样nodejs可以连接数万用户了。因此要开发高并发连接的web项目,我们要用nodejs了。

2.node.js实现高性能

nodejs在服务器端运行的是高性能v8JavaScript脚本,v8JavaScript脚本是被v8JavaScript引擎解析并执行的脚本语言,v8JavaScript引擎是google开发的高性能JavaScript引擎。

正因为v8JavaScript引擎的崛起,才使得nodejs在性能方面有显著的优势。

3.非阻塞式IO和事件环机制

nodejs是单线程的。

非阻塞式I/O:在传统的单线程查询数据库之后,返回数据之前,这段时间是等待数据返回的,大大的影响了性能,nodejs提供了非阻塞式I/O,也就是说在执行查询数据库之后,不会等待数据返回结果,直接执行后面的代码。这样节省了等待数据返回的这个时间,提升了性能。但是我们怎么接受返回的数据呢?答案就是回调函数,当执行查询数据库同时,我们不等待数据返回,此时往回调函数队列加一个反回查询数据的回调函数。当数据返回时候,在执行这个回调函数。

事件环机制:nodejs同一个时刻只能执行一个回调函数,但是在执行这个回调函数时候可以转而去执行其他事件(包括触发新的事件,声明回调函数等),然后在继续执行原事件的回调函数

4.node.js适合开发什么样的应用

连接用户多,没有复杂的业务逻辑的应用。大量的I/O,如apache、tomcat均采用阻塞式io,当数据存储数据库时候会等待很长时间。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值