Composer が壊れて Killed 問題が表示される

藏色散人
リリース: 2021-07-03 15:39:03
転載
1743 人が閲覧しました

Composer を実行して、1 GB のメモリ (PHP に割り当てられる最大実行メモリは 128 MB) を備えた Linode VPS に 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
ログイン後にコピー

Added to 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. 最も単純かつ大雑把かつ効果的な方法は、サーバーをアップグレードしてサーバーにメモリを追加することです。本当に貧乏でお金が心配なら、作曲家を諦めるか、カーブを抜けて国を救ってください。

2. 別の方法は、サーバーに偽のメモリを割り当てて、サーバーを騙し、SWAP キャッシュについて学習することです。 Big Viagra には次の投稿があります: SWAP Q&A: SWAP とは何ですか? SWAPは何に使用されますか?スワップの使い方は?

大きなバイアグラは、サーバーの SWAP キャッシュを 2.5 GB に増やすことで解決されます。もちろん、偽物は所詮偽物であり、ハードディスクによって作成されるキャッシュは、パフォーマンスの点で本物のメモリに劣ることは間違いありません。

3. Stack Overflow の誰かが効果的と思われる方法を共有していましたが、私は試していません。つまり、ローカル開発環境で Composer を実行し、成功したら、composer.lock または git Push を実稼働サーバーにアップロードし、実稼働サーバーで Composer install を実行します。

composer install は、各ソフトウェア パッケージの最新バージョンを検索するのではなく、.lock ファイル内の構成を読み取り、同じバージョンのソフトウェア パッケージを直接取得します。このようにして、コンポーザーのメモリ要件が軽減されます。

ただし、この方法自体が非常に面倒で成功率も不安なため、できれば使わないでください。

最後に、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 問題が表示されるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:daweibro
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!