写给真正
交付技术栈的人
关于 React、Node.js、TypeScript 与 AI 的文章。有译文正文时显示译文。没有时显示英文,并注明这一点。
标签:Concurrency
为何提高并发性会导致HTTP 429错误:起始速率与单主机限制
在不控制启动速率和每主机上限的情况下增加工人数量,会导致流量激增从而引发429错误。吞吐量则依赖于有节奏的并发处理、退避机制以及合理的队列设计。
阅读约 16 分钟使用 Web Locks API 实现多标签页上传的协调处理
通过用 navigator.locks 和 React 上传协调器替代 localStorage 与 BroadcastChannel 的临时方案,杜绝在不同浏览器标签页间重复进行可恢复的上传操作。
阅读约 6 分钟使用 Promise 互斥锁在 JavaScript 中序列化异步任务
使用 Promise 互斥锁在 JavaScript 中序列化重叠的异步任务:AsyncLock 以先进先出方式处理请求,从而保持 UI 状态的有序性,无需线程锁。
阅读约 3 分钟通过十个项目学习Rust:从命令行工具到推理服务
十个Rust项目的渐进式学习阶梯,从用于扫描日志的命令行工具到Redis克隆版、shell及推理服务,以及每个项目分别能帮助我们理解内存、并发和故障处理方面的知识。
阅读约 11 分钟使用 SharedArrayBuffer 和 Atomics 在 Node.js 工作线程之间共享内存
既然 SharedArrayBuffer 已经足够好用,为什么 postMessage 仍会为每个 Node.js worker 提供独立副本?原子操作又是如何避免数据丢失并实现跨线程等待的?
阅读约 7 分钟等待与计算:Node.js与Go中的并发与并行
展示如何区分并发与并行性的可运行的 Node.js 和 Go 示例,说明在何种情况下使用 Promise 即可,在何时需要工作线程,以及 goroutine 与它们的区别。
阅读约 8 分钟在并发写入场景下防止 Node.js 和 MongoDB 中的更新丢失
了解原子条件更新、基于版本的乐观锁、409响应以及事务如何防止MongoDB中的并发写入操作悄悄丢弃数据。
阅读约 9 分钟使用 worker_threads 和 Pool 在 Node.js 中卸载 CPU 密集型任务
了解 Node.js worker_threads 如何保持事件循环的响应能力:工作进程的创建、请求-响应通信、可传输缓冲区、线程池以及相关隐患。
阅读约 21 分钟导致 JavaScript 在真实流量环境下失效的七个隐藏假设
了解在JavaScript代码投入生产后,哪些关于类型、重试、并发性、响应顺序、数据量、缺失数据以及内存状态的假设会导致问题。
阅读约 14 分钟