标签: libuv

2 个内容

笔记(2)

Node.js 当前依赖libuv的epoll处理高并发网络I/O(非阻塞),但文件I/O需线程池(阻塞开销大)。io_uring支持正实验集成(Node.js 18+,需UV_USE_IO_URING=1),消除线程池、减少系统调用,实现高效异步磁盘与网络I/O。

Elliot Yang·
41 浏览

Node.js文件读取性能分析揭示了readFileSync和readFile的性能差异。小文件同步读取利用缓存,但异步读取在高并发下存在调度延迟和GC压力。io_uring有望提升异步I/O性能。最佳策略是混合模式,并需关注未来技术发展,如V8指针压缩和PMEM。性能优化需根据具体场景选择。

Elliot Yang·
126 浏览