問題タブ [memory-limit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
8351 参照

php - Dreamhost で memory_limit PHP 5.3 を設定する方法

現在、dreamhost を使用して Web サイトをホストしています。ただし、私が使用しているアプリケーションでは、デフォルトの 90M よりも高いメモリ制限が必要です。私はこれに比較的慣れていないので、次のことを試して php.ini ファイルを変更しようとしましたが、うまくいきませんでした。

PHP 5.3 用のカスタム php.ini ファイルを作成する方法について wiki を調べましたが、memory_limit の設定に問題があります。

次のリンクの指示に従いました: http://wiki.dreamhost.com/PHP.ini


https://panel.dreamhost.com/index.cgi?tr...in.manage&でパネルにログインし、ドメインを php5.3 (おそらく高速な cgi) を使用するように変更します。

ユーザーの下に .php という名前のディレクトリを作成し、5.3 という名前のサブディレクトリを作成します。このディレクトリの下のファイルは、PHP 5.3 を使用するように設定されているそのユーザーの下のすべてのドメインで使用されます。

端末の例

このディレクトリが存在すると、その中に作成できるファイルが 2 つあります。

カスタム ディレクティブを PHP に追加するには、.php/5.3/ の下に「phprc」というファイルを作成し、構成ディレクティブを追加します。デフォルトの php.ini をこのファイルにコピーする必要はありません。これは、システムの php.ini に加えて使用されるためです。ディレクティブが両方のファイルにある場合、このファイルのディレクティブが優先されます。


私の phprc ファイルに、次の行を追加しました。



zend_extension は phpinfo() で取得および検証されますが、memory_limit は 128M に変更されません。メモリ制限を変更する別の方法はありますか? または、正しいアプローチではなく、phprc ファイルで変更しています。memory_limit の init_set を除くすべてのコマンドが機能したと述べた別の投稿がありました。

ところで:ここにphpinfo()があります - http://peachjar.com/phpinfo.php

0 投票する
38 に答える
119580 参照

algorithm - 与えられた 40 億に含まれない整数を生成する

私はこのインタビューの質問を受けました:

40 億の整数を含む入力ファイルが与えられた場合、ファイルに含まれていない整数を生成するアルゴリズムを提供します。1 GB のメモリがあるとします。メモリが 10 MB しかない場合に何をするかをフォローアップします。

私の分析:

ファイルのサイズは 4×10 9 ×4 バイト = 16 GB です。

外部ソートを実行できるため、整数の範囲を知ることができます。

私の質問は、ソートされた大きな整数セットで不足している整数を検出する最良の方法は何ですか?

私の理解(すべての回答を読んだ後):

32 ビット整数について話していると仮定すると、2 32 = 4*10 9 個の異なる整数があります。

ケース 1: 1 GB = 1 * 10 9 * 8 ビット = 80 億ビットのメモリがあります。

解決:

1 つの異なる整数を表す 1 ビットを使用すれば、それで十分です。ソートは必要ありません。

実装:

ケース 2: 10 MB メモリ = 10 * 10 6 * 8 ビット = 8000 万ビット

解決:

考えられるすべての 16 ビット プレフィックスには、2 16個の整数 = 65536 があり、2 16 * 4 * 8 = 200 万ビットが必要です。65536 個のバケットを構築する必要があります。最悪の場合、40 億個の整数すべてが同じバケットに属するため、バケットごとにすべての可能性を保持する 4 バイトが必要です。

  1. ファイルの最初のパスで各バケットのカウンターを構築します。
  2. バケットをスキャンして、ヒット数が 65536 未満の最初のバケットを見つけます。
  3. ファイルの 2 番目のパスを通じてステップ 2 で見つかった上位 16 ビット プレフィックスを持つ新しいバケットを構築します。
  4. ステップ 3 で構築されたバケットをスキャンし、ヒットがない最初のバケットを見つけます。

コードは上記のものと非常によく似ています。

結論: ファイル パスを増やすことでメモリを減らします。


遅れて到着した人への説明: この質問は、ファイルに含まれていない整数が 1 つだけあるとは言っていません。少なくとも、ほとんどの人はそのように解釈していません。ただし、コメント スレッドの多くのコメントは、タスクのバリエーションに関するものです。残念ながら、それをコメント スレッドに導入したコメントは後で作成者によって削除されたため、孤立した返信がすべてを誤解しているように見えます。とても紛らわしいです、すみません。

0 投票する
1 に答える
1620 参照

php - Wordpressサイトをローカルで実行しようとするとメモリ制限の問題

私はワードプレスのウェブサイトに取り組んでおり、開発目的でローカルテスト環境をセットアップしようとしています。MAMP(Mac Apache MySQL PHP)スタックを実行しています。

次のエラーが発生しています。

wp-config.phpの28行目を変更して、メモリ制限を増やしようとしました。

そしてindex.phpに次の値を含めることによって

私が試したメモリ値は運がなかった。私はワードプレスに比較的慣れていません、誰かが何が起こっているのか考えていますか?

0 投票する
4 に答える
4413 参照

c++ - C++ の最大 RAM 制限の変更

プログラムの RAM の最大量を変更するにはどうすればよいですか? 常にメモリが不足しています (システムの最大ではなく、最大の ulimit)。グローバル メモリ制限を変更したくありません。vlimit() 関数が機能する可能性があることを確認しましたが、その使用方法が正確にはわかりません。

編集: Linux 2.6.38-11-generic を使用しています。これはメモリ リークではありません。文字通り、特定のクラスに 100k を割り当てる必要があります。

0 投票する
2 に答える
2815 参照

php - PHP メモリ制限 / RAM に関する質問

PHP について質問がありますが、それはメモリ制限です。実行するには aboutまたは more に設定する必要があるindex.phpページがあります。memory_limit50MB

これは、誰かがそのページにアクセスするたびに、ページをロードするのに 50MB の RAM メモリが必要になるということですか?

つまり、2 つのクライアントが同時に同じページを要求している場合、サーバーはそれらにサービスを提供するために 100MB の空き RAM メモリが必要ですか?

0 投票する
1 に答える
356 参照

php - apacheは、一部のリクエストで速度が低下します

ApacheのMPMおよびディスクキャッシュモジュール、XCache for PHP、およびw3トータルキャッシュプラグインをインストールして、WPMUのインストールを高速化しました。

全体的にウェブサイトは問題なく動作しているようですが、/ wp-admin /ページにアクセスすると、応答時間が大幅に長くなり、要求されたページが404挿入されることがあります。または、「致命的なエラー:許可されたメモリサイズ...バイトが使い果たされました。 "。

XCacheは正常に機能しているようで、memory_limitは64MBに設定されています。問題を解決するためにどこを掘ればいいですか?

0 投票する
1 に答える
1386 参照

php - imagecreatefromjpegを使用して画像を同期しているときに、許容されるメモリサイズが使い果たされました

imagecreatefromjpegを使用して、あるディレクトリから別のディレクトリに画像を同期し、その過程で画像のサイズを変更しようとしています。合計で、スクリプトは15GBの画像ファイルを処理する必要があります。最初は、メモリ制限にぶつかるまで、スクリプトは問題なく実行されていました。次のコードを設定することで、これが修正されたことがわかりました。

しかし、同期された多くの画像の後、同じ問題が何度も何度も発生し、5回目に制限を1000Mに設定するまで何度も発生しましたが、それでも問題は解決しませんでした。9999Mを試した後でも、同じエラーが発生しました。

phpinfo()を確認したところ、正しく設定されていることがわかりました。

誰かが私にメモリ制限を増やすための別のオプションを与えることができますか?

同期に使用するコードを追加します。

いくつかのオランダの変数名について、事前にお詫び申し上げます。

編集1-12-201112:00:問題が62MBの画像ファイルであることがわかりました。ファイルが大きいように見えますが、55MBを与えるか取るかが問題です。誰かがこれを引き起こす可能性があることを知っていますか?

0 投票する
3 に答える
227 参照

php - PHPでのメモリ不足の奇妙な動作

こんにちは、次の奇妙なエラーが表示されます

致命的なエラー: メモリ不足 (割り当てられた 29097984) (802454 バイトを割り当てようとしました)

私がするとき、私はini_get('memory_limit')256Mました。

27M上記のエラーでは、スクリプトは??に達すると終了します。

提案は共有ホスティング アカウントを使用しています。

0 投票する
3 に答える
23614 参照

php - phpunitmemory_limitパラメーターは適用されません

mac osx 10.7にpear経由でphpunitをインストールしましたが、メモリ制限エラー(レポートでxdebugが有効になっている)を除いてすべて正常に動作します。

パラメータをphpunitに追加しようとし-d memory_limit=512Mましたが、最初のエラーで追加var_dump(ini_get('memory_limit')); exit;するとstring(3) "32M"が出力されるため、適用されません。

それで、なぜそれが適用されないのですか?

その上、私が走れば

「256M」をエコーし​​ます

phpunitが同じphpを実行していない可能性はありますか?

0 投票する
1 に答える
1373 参照

php - メモリ制限を超えずにphpで複数の画像のサイズを変更する

私は現在、PHPを使用してサーバーに複数の画像をアップロードしてサイズを変更できるフォームを取得しようとしています。クライアントによってアップロードされた各画像のサイズは約2.5MBです。

現在、このmove_uploaded_file()機能を使用しています。

ファイルをサーバーに移動するのに問題はありません。トリミングしようとすると問題が発生します。ホストにImageMagickがないので、このセットアップを使用しています(すべてのコードが関連するものだけではなく、これはループ内にあり$width、さまざまな作物サイズに合わせて変更されます)

現状では、これは2つの画像に対してのみ機能します。送信されたものが3つ以上ある場合、「メモリが使い果たされました」というエラーが発生します。私のメモリ制限は120mbなので、これを調査しました。どうやら、このimagecreatefromjpeg関数は大量のメモリを使用しているようです。特に、ファイルの解像度が大きい場合はそうです(私の場合はそうです。したがって、トリミング/サイズ変更が必要なのはなぜですか)。

このタスクへのより効率的なアプローチを知っている人はいますか?私はグーグルで研究しましたが、誰もが私と同じテクニックを使用しています。