-1

まず、私のウェブサイトをホストするサーバーについて話しています。

そのため、数分前に cPanel 仕様で、CPU 使用率がほぼ 100% であることに気付きました (範囲は 80-95% です)。一方、私のメモリ使用量は 5 ~ 10% です。

将来、このサーバーがクラッシュするのではないかと心配しています。たとえば、CPU 使用率 = 100% の場合、どうなるでしょうか? このサーバーはクラッシュする可能性がありますか?

この CPU 使用率は、5 秒ごとに div を更新する ajax スクリプトを実行しているためであることに気付きました。この div の内容は、5 秒ごとに作成される 3 つのランダムな配列からの文字列です。

さらに、コード (php コード) で多くの変数 (配列) を使用しており、これらの変数をフラッシュする必要があるかどうか疑問に思っています。例えば

<html>
<?
$variable1 == something
$variable2 == something
$variable3 == something

?>
</html>
<? flush($variable1) ?>

phpでこれを行う必要がありますか(C ++のように)?またはphpには、Javaのような自動ガベージコレクターがありますか?

編集:私が使用しているAjax Scritp

index.html

<html>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js"></script>
    <script type="text/javascript">
    var auto_refresh = setInterval(
    function ()
    {
    $('#autoRefreshDiv').load('autoRefreshDiv.php').fadeIn("slow");
    }, 5000); // refresh every 5000 milliseconds
    </script>
    <body>
    <div id="autoRefreshDiv"></div>
</body>
    </html>

autoRefreshDiv.php

<?
$array1 = array("something1", "something2");
$array2 = array('something3','something4');
$array3 = array('something5','something6');
shuffle($array1);
shuffle($array2);
shuffle($array3);
echo $array1[0].'.....'.$array3[0].'.....'.$array2[0] ;
?>
4

2 に答える 2

1

あなたの質問は少しあいまいです。いくつかの答え: CPU 負荷が 100% に達しても、サーバーはクラッシュしません。応答が遅くなる可能性がありますが、クラッシュはオプションではありません。アプリケーションを最適化する必要があるかもしれません...

フラッシュはガベージ コレクションとはあまり関係がありませんが、出力バッファリングとは関係ありません。スクリプトが完全に完了する前に、ユーザーにデータを送信します。

何千もの変数について話していなければ、多くの変数を持つことはそれほど大きな問題ではありません。狂った再帰などがない限り、安全なはずです。記憶力は最大10%なので危険はない。もちろん、php.ini は、スクリプトが使用するメモリの総量を制限します。

これが少し役立つことを願っています。

于 2013-02-05T22:45:18.597 に答える
0

PHPには、リクエストが閉じられた場合にトリガーされるGCがあるため、変数をフラッシュする必要はありません-> ajax-requestが終了するたびに。また、多くの変数を使用すると、CPU ではなく RAM のみに負荷がかかる可能性が高くなります。

数秒ごとに大きなランダム配列を生成すると、CPU 使用率に問題が生じると思います。

于 2013-02-05T22:48:03.520 に答える