0

700 MHz CPU を搭載した非常に遅いホーム サーバー (raspberry pi) を使用しています。いくつかのサイトを開発しているときに、大きな (5 MB) .jpg ファイルをイメージ リサイザー ( imagecreatefromjpeg()imagecreatetruecolor()imagecopy()) に入力すると、サーバーがハングすることがあります。

ファイルを処理していると思いますが、数分待っても終了しません。

問題は、シェルにアクセスしてapache2を停止/再起動することさえできないことです。唯一の解決策は、サーバーの電源を完全にオフにすることです。

apache2 のハードウェア リソースを制限する方法があるかどうか疑問に思っていました。たとえば、CPU 使用率を 80% に制限できたとしても、シェルにアクセスして停止することはできます。

timeout および max_execution_time ディレクティブを設定しようとしましたが、apache2 が無限に動作してサーバーがフリーズするのを止めていないようです。

これを解決する方法はありますか?

4

2 に答える 2

0

独自の設定からApacheのCPU使用率を制限できるとは思いません。

cpulimit のような別のアプリを使用してみることができます (参照:ハウツー):

$ sudo apt-get install cpulimit
$ man cpulimit

これらを試して、サーバーの全体的なパフォーマンスを最適化することもできます.

  • /etc/apache2/apache2.conf を編集して、次の値を使用します。

    <IfModule mpm_prefork_module>
        StartServers          2
        MinSpareServers       2
        MaxSpareServers       3
        MaxClients           50
        MaxRequestsPerChild   0
    </IfModule>
    
  • /etc/dphys-swapfile セットでスワップを展開します。

    CONF_SWAPSIZE=512
    

    次に実行します。

    $ sudo dphys-swapfile setup
    $ sudo dphys-swapfile swapon
    
  • ここでラズベリーをオーバークロックします(思ったより安全です):

    $ sudo raspi-config
    

    950MHzで使用しています。より高いオプション (1000MHz) がありますが、フォーラムの一部の人々は、SD の破損について不満を述べています。

  • グラフィカル インターフェイスを使用しない場合は、raspi-config memory_splitでグラフィック メモリを 16 に設定することもできます。

于 2013-01-07T21:44:52.013 に答える
-1

apache-mod_ratelimitをインストールできます。また、httpd.confを使用したApacheの制御も参照してください。

于 2013-01-08T10:38:51.723 に答える