我正在制作一个可能列出数千个项目的Meteor网络应用程序 - 每个项目可能有1-5个图像
我正在使用OSX 10.11.4和Meteor 1.3.2.4
到目前为止,构建过程还没有任何问题
今天,我将一个包含20K图像的文件夹移动到公共/目录中,项目构建时间大大增加 - 我查了一些建议并做了修复盘但是没有解决问题
我取消了构建过程,并且在退出之前显示了文本" EMFILE,太多打开文件的错误
删除images文件夹后,构建时间又回到了< 3s就在它之前
这是正常的吗?如果是,我如何在拥有10K图像时将其保持在最低限度
答案 0 :(得分:1)
Meteor cmd创建每个文件的校验和,以便它可以告诉如果在向客户端提供服务时已经修改了某些东西,那么我认为打开文件来自的地方,因为它扫描每个文件创建校验和。
MAC的最大打开文件限制大约为256,这是您获得的EMFILE错误。您可以使用ulimit -n
检查当前限制,然后根据here运行ulimit -n 512
,其中512是新限制,可以增加当前限制。
只是逐步增加,看看你需要设置多少或弹出20k,看看会发生什么......
仍然需要一段时间来加载,可能更好地服务来自nginx服务器或s3桶或类似的图像而不是流星本身。如果你想扩展它意味着你需要每次部署一大堆图像,这可能会慢慢通过网络取决于大小