node+express+mongodb

nodejs是什么

2017-11-12  本文已影响6人  猪猪9527

nodejs是什么

nodejs是js runtime
使用事件驱动 和 非阻塞I/O 模型

非阻塞I/O

阻塞: I/O时进程等待I/O完成时进行下一步
非阻塞: I/O时函数立即返回,进程不等待I/O完成 (异步的感觉)

事件驱动

为什么偏爱nodejs

cpu密集: 压缩,解压,加密,解密
I/O密集: 文件操作,网络操作,数据库

web常用场景

高并发应对之道

高并发: 单位时间访问量很大

进程

nodejs工作模型

cpu处理 -> I/O
cpu处理的速度远远大于I/O的
cpu相当于服务员 I/O相当于大厨 一个大厨对应一个服务员
这样其实减少服务员 减少到一个 就是开一个进程
这样没有占用cpu

线程

线程 :进程内一个相对独立的,可调度的执行单元,与同属一个进程的线程共享进程的资源
多线程: 启动一个进程,在一个进程内启动多个线程,这样多个线程也可以一块执行多个任务

nodejs的单线程

nodejs常用场景

上一篇 下一篇

猜你喜欢

热点阅读