21个Node.js面试问题与解决方案( 二 )
异步函数并行运行吗?
否 。 当并行进程在其自己的进程或线程中运行时 , 异步函数将在下一个事件循环迭代中执行 。
Node.js是多线程的吗?
一个Node.js进程在单线程中运行 , 但我们可以使用 child_process 模块来并行运行多个进程 , 或者使用 Worker 来运行多个线程 。
什么是child_process模块?
child_process 模块使我们可以生成和派生子进程 。 这些是在自己的CPU中运行的独立进程 , 使我们可以访问系统命令 。
web worker和worker thread的区别是什么?
Web worker是在浏览器中实现的 , worker thread 是在Node.js中实现的 。 它们都解决了同一个问题 , 那就是提供并行处理 。 事实上 , Worker Thread API是基于Web Workers实现的 。
使用worker thread与child_process相比有什么优势?
child_process用自己的内存空间运行自己的进程 , 而worker thread则是一个进程中的线程 , 可以与主线程共享内存 , 这有助于避免来回昂贵的数据序列化 。
你将使用什么来通过HTTP与客户端建立双向实时连接?
我们可以使用WebSockets或者长轮询 , 有像soket.io和SignalR这样的库可以为我们简化这个过程 。 如果WebSockets在浏览器中不可用 , 它们甚至可以为客户端提供长时间的轮询功能 。
结束【21个Node.js面试问题与解决方案】我希望这些问题对你有用 , 你能回答所有的问题吗?如果你不能 , 别担心 , 除非你的目标是高级职位 , 否则你不需要知道所有的知识 。
- 三年Java开发,刚从美团、京东、阿里面试归来,分享个人面经
- java面试题整理
- 面试官:问你一个,Spring事务是如何传播的?
- 程序员面试主要看哪些 该怎么准备面试内容
- 震惊!京东T4大佬面试整整三个月,才写了两份java面试笔记
- 2020金九银十安卓面试题来袭(猿辅导+斗鱼+字节+腾讯)
- 「8」进大厂必须掌握的面试题-Java面试-异常和线程
- 安卓面试必备的JVM虚拟机制详解,看完之后简历上多一个技能
- 成功拿下阿里P6的offer后,总结出大厂面试的血泪史
- 面试官:聊聊 etcd 中的 Raft 吧