WWW.lllT.neT在运行内存1GB(分派给PHP的较大运存是128MB)的Linode VPS上运作Composer安装Drupal控制模块,沒有获得取得成功的提醒,仅仅提醒KILLED。

根据改动分派给PHP的运存把PHP运行内存由128MB提升到256MB之后,出错实际了一点:

Fatal error: Out of memory (allocated 754982912) (tried to allocate 33554440 bytes) in phar:///usr/local/bin/composer/src/Composer/DependencyResolver/RuleSet.php on line 84

加进512MB:

Fatal error: Out of memory (allocated 832577536) (tried to allocate 16777216 bytes) in phar:///usr/local/bin/composer/src/Composer/DependencyResolver/Solver.php on line 223

再加进768MB,出错又变为一句简易的KILLED了。

来看Composer的食欲很大啊。该怎么办?

1.最简单直接而最有效的法子便是把网络服务器更新,给网络服务器加运行内存。确实穷心痛钱得话,就舍弃Composer或是攘外必先安内。

2.待选计划方案便是给网络服务器分派点假的运行内存欺骗一下网络服务器,SWAP缓存文件了解一下。大万艾可这里有一篇帖子:SWAP问答:SWAP有什么?SWAP有什么作用?SWAP如何使用?

大万艾可便是根据把网络服务器的SWAP缓存文件提升到2.5 GB处理的。自然,假的终归是假的,电脑硬盘做的缓存文件,在功能上肯定是比但是真真正正的运行内存的。

3.Stack Overflow上也有人共享了一个方式很有可能合理,但是大万艾可沒有试过。那便是在当地开发工具上运作Composer,取得成功之后把composer.lock提交或是git push到生产制造网络服务器上,随后在生产制造网络服务器上运作composer install。

composer install会载入.lock文档里边的配备并立即获取同样版本号的程序包出来,而不是搜索每一个程序包的最新版。那样composer对缓存的需要量便会减少一些。

但是这个方式自身很不便,通过率又令人担忧,因此能无需就无需吧。

最终,共享给大伙儿一个无需改动php.ini配置文件,临时性公开composer运存限定的方式:

php -d memory_limit=-1 /usr/local/bin/composer require/isntall/update

或是:

php -d memory_limit=-1 `which composer` require/isntall/update

以上便是Composer运作终断并表明Killed的问题的详尽具体内容,大量请关心自学java网其他相关文章!

WWW.lllT.neT

声明:有的资源来自网络转载,版权归原作者所有,如有侵犯到您的权益请联系邮箱:our333@126.com我们将配合处理!

原文地址:Composer运作终断并表明Killed的问题发布于2021-12-10 09:36:02