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    

再次启动正常

相关推荐
Web Security Loop3 小时前
MAC卸载JDK环境
java·macos·jdk
TELL5211 天前
vue前端架构
vue
IS6831 天前
视频文案提取技术全景:ASR vs OCR,哪种方案更适合你?
ide·macos·xcode
南城以南溫暖如初1471 天前
社区健身小程序开发流程详解:技术选型与实施经验分享
java·经验分享·spring boot·mysql·vue·apache
万亿少女的梦1681 天前
基于Spring Boot、Vue与MySQL的私人健身教练预约管理系统设计
java·spring boot·mysql·vue·预约管理
安且惜2 天前
Windows或mac支持本地抓包
windows·macos
做萤石二次开发的哈哈2 天前
开发者如何调用 ERTC iOS API 完成 SDK 初始化配置?
macos·objective-c·cocoa
AUV11072 天前
Mac 录屏自动缩放怎么设置才不乱跳:自动片段、固定区域与鼠标跟随调试
macos·计算机外设
程序员良辰2 天前
【Mac快速切换JDK】Mac 使用 Homebrew + jenv 快速切换 JDK 版本
java·开发语言·macos
满栀5853 天前
vue动态路由效果
前端·javascript·vue.js·前端框架·vue