码迷,mamicode.com
首页 > 编程语言 > 详细

如何理解node是单线程异步I/O

时间:2017-03-28 10:32:28      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:apache   proc   亮点   编程   理解   回调函数   异步操作   解决   roc   

I/O: 指的是设备与cpu连接的接口电路的操作

异步: 就是不用等一个操作完成,而是去执行其他代码,等操作完成之后再去执行那个操作的结果,

nodeJS使用回调函数来实现的

单线程:在实现异步操作时有很多解决办法,Apache的解决办法是多线程,应该说很多编程语言都使用了多线程,但是在后来的测试和实际应用中,

多线程程序在超过一万人时性能急剧下降,因为创建一个新线程是很耗性能能,即使多线程会把CPU利用到极致但也不能解决过多的人来访问。所以

node的单线程就成为它璀璨的亮点。而且它的回调和它的语法配合的很有默契。但是它也暴露了它的缺点,就是不能充分利用CPU。所以对待CPU

密集型操作它的性能就照多线程还是不足的。为了解决这个问题,node有了新建进程或子线程的模块(child-process)在遇到CPU密集型操作时

可以新建子进程来取执行。

https://segmentfault.com/a/1190000007343993这个网址把child-process说的很细

如何理解node是单线程异步I/O

标签:apache   proc   亮点   编程   理解   回调函数   异步操作   解决   roc   

原文地址:http://www.cnblogs.com/sungg/p/6632114.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!