MacOS 文件句柄数不够 Error: EMFILE: too many open files

MacOS 文件句柄数不够 Error: EMFILE: too many open files

启动项目发现报错:Error: EMFILE: too many open files;经排查是因为单个微应用项目较大,发布过程中已经超过了mac默认的文件监听上限对文件系统进行大量并发调用,操作系统的文件描述符数量会被瞬间用光,抛出EMFILE,too many open files。

直奔主题-解决方案

解决方式也比较简单,只要修改文件最大上限即可,注意这是临时修改,过了一段时间后,又会恢复到默认的大小,永久修改需要在配置文件中修改.

执行 launchctl limit 查看下,结果如下

javascript 复制代码
	cpu         unlimited      unlimited      
	filesize    unlimited      unlimited      
	data        unlimited      unlimited      
	stack       8388608        67104768       
	core        0              unlimited      
	rss         unlimited      unlimited      
	memlock     unlimited      unlimited      
	maxproc     11136          16704          
	maxfiles    2048           65535  

其中 maxfiles 2048 65535 上限值改大点

终端执行 sudo launchctl limit maxfiles 5000000 5000000 这里会提示输入密码

再次查看执行 launchctl limit 查看下,结果如下

javascript 复制代码
	cpu         unlimited      unlimited      
	filesize    unlimited      unlimited      
	data        unlimited      unlimited      
	stack       8388608        67104768       
	core        0              unlimited      
	rss         unlimited      unlimited      
	memlock     unlimited      unlimited      
	maxproc     11136          16704          
	maxfiles    5000000        5000000    

再次启动正常

相关推荐
苏打水com4 小时前
第十五篇:Day43-45 前端性能优化进阶——从“可用”到“极致”(对标职场“高并发场景优化”需求)
前端·css·vue·html·js
半桶水专家5 小时前
vue3事件处理详解
vue
Sheffi667 小时前
iOS 触摸事件完整传递链路:Hit-Test 全流程深度解析
macos·ios·cocoa
ChineHe10 小时前
Gin框架入门篇002_第一个Gin服务
macos·xcode·gin
Roc.Chang10 小时前
解决 macOS 26.1 The application “xxxx” can’t be opened. 问题
macos
赶路人儿10 小时前
从intel mac迁移到M3后软件的兼容性
macos
颜淡慕潇10 小时前
Podman 从0到1使用教程(macOS 系统):安装 MySQL、Redis 容器
mysql·macos·podman
Niap.pr10 小时前
Macos下访问树莓派系统(ext4)
macos
芳草萋萋鹦鹉洲哦10 小时前
【mac】解决Apple无法验证“fsevents.node”是否包含可能危害Mac安全或泄漏隐私的恶意软件
安全·macos
aini_lovee1 天前
寻找 MAC 协议的 MATLAB 仿真
开发语言·macos·matlab