所有分类
  • 所有分类
  • 后端开发
Node.js:为什么说它比多线程更高效?

Node.js:为什么说它比多线程更高效?

单线程、非阻塞I/O、事件驱动,这三个特点是相辅相成的。阻塞I/O和非阻塞I/O的区别在于系统在输入与输出的期间,能不能接收输入。操作的机制,也是实现非阻塞I/O的前提基础。就像上面非阻塞I/O的例子一样,服务员在服务下一桌客人时,会时刻留

哈喽哈喽!今儿要给你分享一个超棒的东西——Node.js!还是不懂?别急别急,咱慢慢说。Node.js牛就牛在它的“三板斧”:单线程、非阻塞I/O和“打了鸡血似的”事件驱动,厉害?

说起I/O,其实就是进出口!比如说你去餐厅吃饭,下单买单这些都属于这个范围。什么叫阻塞I/O?想象一下,假如您就坐在餐厅里,同时好几个服务员(类似于我们说的“多线程”)都在忙碌着准备食物,但是他们只能负责一桌客人。所以说,要是有个客人正在点菜,那其他的服务员可就要歇息一会儿,等客人点完了才能继续服务别的食客。这就是阻塞I/O。

服务员可不是轻松活比如在一家小饭馆,假设只有一个服务员(简直就像是单线程程序嘛),他可能就会先招呼客人点菜,然后忙着照顾下一堆顾客,等到上一桌吃的差不多了再来收拾桌子。这样做事效率很高!当然,如果服务员出现问题,所有人都得干瞪眼等你。这对于餐厅来说就是大灾难(就和服务器崩溃差不多咯)。

聊完非阻塞I/O了,咱们再说说另外一个好玩的话题,叫”事件驱动”。比如说你在饭馆吃饭时,记得那个老是跑过来帮你看着你前面桌子情况的服务员吗?他就是一直在进行”事件驱动”。一旦有客人喊:”上菜”,服务员就能立马回应:”知道。”接着他就会记下来,最后一到饭点,他就会按照刚才记录的顺序一一给你端上来。

Node.js厉害之处就在于,对那种大量 I/O 需求的情况来说,表现特别棒!还有就是,处理很多请求也完全没问题。但别忘了注意安全,毕竟安全才是第一位!

还有什么想说的吗?欢迎给我们的编辑提意见或者建议大家的参与和反馈我们都非常看重滴~

好了,今天给大家普及到这里就差不多!希望你们对Node.js多多少少有些认识勒。还不太明白?那就加油研究!记得帮我点个赞、留个言再分享一下~我们今天讲了Node.js的几个亮点:单线程、非阻塞I/O和事件驱动,它们各有千秋,让Node.js同时处理大量请求变得相当给力。当然,安全还是第一位哒!有什么问题或者想法欢迎随时提出来哈~真的很喜欢和你们这样的小伙伴互动~

原文链接:https://www.icz.com/technicalinformation/web/2024/03/11365.html,转载请注明出处~~~
0

评论0

请先
注意:请收藏好网址www.icz.com,防止失联!站内免费资源持续上传中…!赞助我们
显示验证码
没有账号?注册  忘记密码?