2016-06-28 10 views
2

私はアクティブサーバ上のbashスクリプトからgzipを実行する "より良い"方法を試してきましたが、何とかその負荷平均を私が望むものよりも上回るように管理しています。ニース/私は一番最初ですか?それは問題ですか?スクリプトのサーバー負荷を軽減する他の方法はありますか?

I/OとCPUのどちらがより柔らかいでしょうか?

私が気付いていない別の方法がありますか?

  1. /usr/bin/nice -n 19 /usr/bin/ionice -c2 -n7 gzip -9 -q foo*

又は

  • /usr/bin/ionice -c2 -n7 /usr/bin/nice -n 19 gzip -9 -q foo*
  • また、上の負荷を軽減する助けになるようulimitなどの別のコマンドがありますサーバー?

    答えて

    0

    私はionice事に慣れていないんだけど、niceはただのは、CPUを使用したい別のプロセス場合、素敵なプロセスは少し待って喜んであることを意味します。

    CPU負荷は「実行キュー」の長さの尺度に過ぎないので、これは影響を受けません。これは同じです。

    ioniceと同じですが、ディスクの負荷に影響すると思います。

    "niceness"は、あなたのプロセスが他の人があなたのキューに入る前にどのようにしていくことができるかにのみ影響しますが、最終的にはCPU /ディスクがジョブを実行しなければならないので同じ負荷になります。

    ANALOGY:チェックアウトカウンターの背後にいる人をアナロジーとして考えます。彼らはまだキューを処理しなければなりませんが、キュー内の人々はお互いに親切で、他の人たちの前でカウンターに渡すことができます。 「負荷」は、そのキューの長さです。

    +0

    これは非常に有用です、ありがとう。 –

    +0

    @KarmaDoeの場合は、上向き投票(良い答えだと思う場合)または回答を受け入れる(あなたの質問が解決すると思う場合)を検討してください。それはこの答えのためだけでなく、一般的になります。 – Kusalananda

    +1

    私はアップビューしましたが、登録したばかりの「少なくとも15の特典ポイントが必要です。私の母国語ではないことを付け加えて、それはどういうわけか私にとって障壁になるかもしれません。答える時間を取ってくれてありがとう。 また、私は問題の回避策を得て、サーバーの負荷とioの負荷をスキャンし、信号を送信して一時停止して再開するスクリプトを追加しました。 何かのように: avg> "ハードコードされた値"の場合 'kill' -n 19 \' ps -ef | grep "foo" | grep -v grep | awk '{print $ 2}' \ ' else ' kill -n 18' \ 'ps -ef | grep "foo" | grep -v grep | awk '{print $ 2}' \ ' –

    関連する問題