node的优越之处
我们都知道node是基于事件驱动和异步非阻塞IO的,所以具备高并发的能力。同时它也是单线程的,不需要像多线程那样考虑资源的共用,同时也不会有死锁的情况发生。
node的应用场景谈论:
1.I/O密集型,I/O密集的优势主要是在于Node利用事件循环的处理能力,而不是启动每一个线程为每一个请求服务,资源占用极少。
2.CPU密集型业务。对于这类业务,node的运算能力来源与用C++编写的模块,它优秀的运算能力来源于V8的深度性能优化。但是对于参与大量计算,CPU时间片不能释放,会使得后续的异步I/O无法调用,因此这时候要重新评估。并且可以使用子进程的方式,将一部分Node进程当做常驻服务进程用于计算,然后利用进程之间的消息来传递结果。将计算与I/O分离,这样还能充分利用多核CPU。
3.参与分布式系统、大数据计算有很大的优势
4.统一前后端语言。
5.高性能并行I/O有利于实时应用、分布式环境、提升web渲染能力。