node 特性及优缺点

Node特性

  • 共享状态的并发
    单线程(所有请求都是这个线程处理),全局变量所有请求共享,修改时需特别注意对后续请求的影响。
    PHP多线程,每次请求,都会新创建一个线程,全局变量会重新加载。

Node 优点:

  • 异步事件驱动
    异步回调,事件循环队列
  • 非阻塞I/O
    遇到I/O操作,主线程只注册事件,不会等待结果,而是继续执行,I/O使用异步事件驱动,I/O操作完成后,对应的回调函数添加到事件循环队列中,主线程空闲时处理消息队列中的事件。
  • 单线程(这里指主线程)
    单线程+事件循环,没有多线程资源占用和上下文的切换。
  • 性能出众,适合处理高并发场景
    底层C++实现 、V8引擎,异步非阻塞
  • javascript语法
    便于学习,便于做全栈开发
  • npm
    避免重复造轮子,npm上有很多高质量的包

node应用场景

  • 使用于I/O密集型
    http 请求与响应, 磁盘 I/O任务。
    在线多人聊天,多人在线小游戏,新闻,博客,微博
  • 不使用于CPU密集型
    视频解码,大量计算任务。

原文地址 https://blog.csdn.net/hsj1669666567/article/details/79568545

原文地址:https://www.cnblogs.com/tianxiaoxiao/p/9948643.html