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    

再次启动正常

相关推荐
Roc.Chang8 小时前
Vite 启动报错:listen EACCES: permission denied 0.0.0.0:80 解决方案
linux·前端·vue·vite
PD我是你的真爱粉15 小时前
Vite 项目搭建与Pinia状态管理
前端框架·vue
麦麦大数据16 小时前
F071_vue+flask基于YOLOv8的实时目标检测与追踪系统
vue.js·yolo·目标检测·flask·vue·视频检测
未名编程19 小时前
Linux / macOS / Windows 一条命令安装 Node.js + npm(极限一行版大全)
linux·macos·node.js
was17219 小时前
使用 Mole 进行 macOS 深度清理与系统优化
macos·系统清理·cli 工具
TheMemoryIsLost1 天前
mac系统装docker,不装docker desktop,安装colima
macos·docker·容器
lyyl啊辉1 天前
1. Vue3简介
vue.js·vue
lyyl啊辉2 天前
4. Vue-Router机制
vue
红叶尽染寂绀蓝2 天前
已解决:同一ip下,Mac和Windows同时用vscode连接某个Linux远程服务器后,Mac再次连接时无法正确打开远程文件夹,由于转发设置导致
linux·服务器·windows·vscode·tcp/ip·macos
qq_24218863323 天前
快速搭建跨环境检测服务的步骤
linux·开发语言·windows·python·macos