node特点
(1) 异步 I/O操作:绝大多数的操作都是以异步的方式进行调用,包括文件操作及网络请求;
(2) 事件与回调函数:Node 可把前端浏览器中应用广泛的事件机制引入到后端,配合异步 I/O操作;优点是事件编程轻量,低耦合,只用关注事务点等,缺点是多个事件不是按出现顺序执行,不便于解读;
(3) 单线程:Node 保持了 JS 单线程的特点,在 Node 中,JS 与其余线程无法共享状态。单线程好处了不用处理多线程之间的状态同步与通信,没有死锁的存在,也没有线程切换带来的性能开销。缺点是无法利用 多核 CPU;错误会引起整个应用退出,应用健壮性值得考验;对大规模高 CPU 计算不友好;
(4) 跨平台:在浏览器中,HTML5 制定了Web Worker标准来解决 JS 大规模计算导致的阻塞 UI 渲染的问题。而 Node 中,使用child_process创建子进程来应对单线程带来的问题。
第二章 模块机制 第三章 一步I/O 第四章 异步编程 第五章 内存控制 第六章 Buffer 第七章 网络编程 第八章 构建web应用
网友评论