exec 或 execFile 报 maxBuffer exceeded,应该如何处理?
解释 exec 与 execFile 收集 stdout、stderr 的缓冲限制,使用中文输出示例区分字符数与字节数,并比较调整有界预算、spawn 流式消费、文件输出和保留有效诊断的处理方式。
Node.js · 流处理面试题第 1 页,显示第 1–32 题,共找到 32 道完整解析,可继续按分类、标签与关键词缩小范围。
按稳定语义路径排序
解释 exec 与 execFile 收集 stdout、stderr 的缓冲限制,使用中文输出示例区分字符数与字节数,并比较调整有界预算、spawn 流式消费、文件输出和保留有效诊断的处理方式。
如何实现 Node.js 子进程之间类似 shell 管道 a | b 的数据流转? 本文先给出可直接复述的结论,再用最小代码说明child_process pipe 管道 串联的工作方式、判断依据、项目边界和常见误区。
Node.js 的 spawn 与 exec 有什么区别,怎么选择? 本文先给出可直接复述的结论,再用最小代码说明child_process spawn exec 区别的工作方式、判断依据、项目边界和常见误区。
JSON.parse 一个超大请求体为什么也会阻塞 Node.js 事件循环,有哪些缓解方式? 本文先给出可直接复述的结论,再用最小代码说明JSON.parse 阻塞事件循环 大请求体的工作方式、判断依据、项目边界和常见误区。
Node.js 服务返回大文件时为什么不能 readFile 进内存再 res.end,正确做法是什么? 本文先给出可直接复述的结论,再用最小代码说明Node.js 大文件响应 createReadStream 流式的工作方式、判断依据、项目边界和常见误区。
Node.js 中为什么推荐用 stream.pipeline 串联流而不是手工 pipe,背压在服务端防内存暴涨中起什么作用? 本文先给出可直接复述的结论,再用最小代码说明Node.js stream.pipeline 背压 防内存暴涨的工作方式、判断依据、项目边界和常见误区。
为什么 for await 遍历 Node.js Readable 时提前 break 会自动销毁流,这替代不了哪种显式错误处理? 本文先给出可直接复述的结论,再用最小代码说明Node.js readable for await break destroy的工作方式、判断依据、项目边界和常见误区。
解释 write 返回 false 是停止继续生产的背压信号,说明当前数据已进入写入流程、不能重写同一块,并用慢速对象流示例验证顺序、drain 等待和正常结束。
Node.js 把大文件流式转成 Base64 时按任意字节块 encode 为什么会得到错误结果? 本文先给出可直接复述的结论,再用最小代码说明Node.js Base64 流式 编码 3 字节 边界的工作方式、判断依据、项目边界和常见误区。
解释 cork 暂存写入与 uncork 释放的关系,使用 writev 示例验证小写入批量交付,并说明嵌套调用计数、end 的处理、背压等待死锁与无批处理实现时的成本。
Node.js 用 crypto Hash 对流式下载做校验时,update 顺序和最终 digest 时机有哪些坑? 本文先给出可直接复述的结论,再用最小代码说明Node.js crypto Hash stream update digest 顺序的工作方式、判断依据、项目边界和常见误区。
stream.destroy(err) 与 writable.end() 有什么区别? 本文先给出可直接复述的结论,再用最小代码说明Node.js stream destroy end error 事件的工作方式、判断依据、项目边界和常见误区。
Node.js 流处理内存持续上涨时,如何区分是未遵守背压、Buffer 视图钉住大内存还是对象模式堆积? 本文先给出可直接复述的结论,再用最小代码说明Node.js stream 内存上涨 背压 Buffer slice 诊断的工作方式、判断依据、项目边界和常见误区。
Node.js Writable 在 end 之后再 write 会触发什么错误,为什么不能靠 try/catch 捕获异步流错误? 本文先给出可直接复述的结论,再用最小代码说明Node.js write after end ERR_STREAM_WRITE_AFTER_END的工作方式、判断依据、项目边界和常见误区。
区分可读耗尽、可写完成和资源关闭,说明 finished 如何组合成功与异常结束、双工流的等待范围和 cleanup 选项,并用 PassThrough 示例验证写入完成后仍有可读数据。
区分自动推送的 flowing 模式和主动 read 的 paused 模式,解释 readableFlowing 三种状态、data 与 readable 的使用方式、暂停恢复及混用消费接口造成的理解偏差。
Node.js 的 Readable、Writable、Duplex、Transform 分别解决什么问题? 本文先给出可直接复述的结论,再用最小代码说明Node.js stream 四种流类型 Readable Writable Duplex Transform的工作方式、判断依据、项目边界和常见误区。
Node.js 顺序读取超大文件为什么流式加背压比 readFile 全量读入更适合,何时 readFile 反而更简单? 本文先给出可直接复述的结论,再用最小代码说明Node.js 大文件 createReadStream readFile 背压的工作方式、判断依据、项目边界和常见误区。
Node.js 将文件流压缩后发给 HTTP 客户端时,为什么 Content-Length 通常不可预知,应改用什么头? 本文先给出可直接复述的结论,再用最小代码说明Node.js gzip 流式 Content-Length Transfer-Encoding chunked的工作方式、判断依据、项目边界和常见误区。
Node.js 流的 highWaterMark 怎么调,越大吞吐就越高吗? 本文先给出可直接复述的结论,再用最小代码说明Node.js stream highWaterMark 内存 吞吐 调优的工作方式、判断依据、项目边界和常见误区。
Node.js 接收 HTTP 上传流时如何用背压限制落盘速度,超限请求应在哪一层截断? 本文先给出可直接复述的结论,再用最小代码说明Node.js HTTP 上传流 背压 大小限制的工作方式、判断依据、项目边界和常见误区。
实现 Node.js 自定义 Readable 时 _read(size) 内 push() 返回 false 应如何控制数据源? 本文先给出可直接复述的结论,再用最小代码说明Node.js 自定义 Readable _read push 返回 false的工作方式、判断依据、项目边界和常见误区。
实现 Node.js 自定义 Writable 时 _write 的 callback 应何时调用,延迟调用会引发什么问题? 本文先给出可直接复述的结论,再用最小代码说明Node.js 自定义 Writable _write callback的工作方式、判断依据、项目边界和常见误区。
多个 Node.js Readable 同时 pipe 到同一个 Writable 时,如何避免 chunk 交错导致文件损坏? 本文先给出可直接复述的结论,再用最小代码说明Node.js 多 readable 同一 writable 交错 pipe的工作方式、判断依据、项目边界和常见误区。
Node.js 流的 objectMode 改变了 highWaterMark 和 chunk 的什么计量方式? 本文先给出可直接复述的结论,再用最小代码说明Node.js stream objectMode highWaterMark chunk的工作方式、判断依据、项目边界和常见误区。
Node.js 用 pause/resume 对 Readable 做限速时,为什么不能保证精确速率,还要配合什么机制? 本文先给出可直接复述的结论,再用最小代码说明Node.js readable pause resume 限速 背压的工作方式、判断依据、项目边界和常见误区。
比较 pipe 的连接与背压能力和 pipeline 的整链完成、错误及销毁管理,用对象转换示例验证成功与中途失败,并说明 HTTP 响应销毁后无法补写错误页及流外资源的清理责任。
Node.js stream/promises 的 pipeline 与 finished 相比事件回调写法解决了哪些收尾竞态? 本文先给出可直接复述的结论,再用最小代码说明Node.js stream promises pipeline finished的工作方式、判断依据、项目边界和常见误区。
解释 read 返回 null 的多种情况,区分生产方 push(null)、缓冲读完和 end 事件,并用可控 Readable 示例验证暂时无数据、随后到达的数据以及 readableEnded 的变化。
消费方对 Node.js Readable 调用 destroy 后,底层定时器或数据库游标为什么不一定自动释放? 本文先给出可直接复述的结论,再用最小代码说明Node.js readable destroy 底层资源 清理 _destroy的工作方式、判断依据、项目边界和常见误区。
Node.js Readable.from 把数组或异步迭代器转成流时,背压是否自动生效? 本文先给出可直接复述的结论,再用最小代码说明Node.js Readable.from async iterator 背压的工作方式、判断依据、项目边界和常见误区。
Node.js 流式按 chunk 解码 UTF-8 时,为什么不能直接对每个 Buffer 调 toString 拼接? 本文先给出可直接复述的结论,再用最小代码说明Node.js UTF-8 跨 chunk string_decoder toString的工作方式、判断依据、项目边界和常见误区。