nice
アプリケーションを開発し、デーモンに値を提供したいと思います。しかし、これについての指示が見つかりませんでした。
一部の記事では、バックアップジョブの価値が高くなければならないnice
(優先順位が低い)と述べていますが、どのプロセスの価値が低いかを見つけることができませんnice
。
値の設定に関するそのような指示がなく、各デーモンの値が最高の優先順位に設定されている場合、nice
恐ろしい世界ではありませんか?nice
-20
答え1
良い値を設定するための指示はありますか?アプリケーション開発者向けですか?
いいえ、それはあなたのコントロールの範囲に属しておらず、そうしようとするべきではありません。 (上司にソフトウェア購入の決定についてアドバイスするシステム管理者だけが迷惑になります。)
プロセスに高い優先順位を与えるには、root 権限が必要です。うまく設計されたデーモンはrootとして実行してはいけません。これに対する例外は非常にまれであり、すべてシステム管理と直接関連しており、一般的な意味の「アプリケーション」とは関係ありません。どのようなシステム管理用のソフトウェアを作成しない場合は、最初にrootとして実行するようにアプリケーションを設計しないでください。したがって、アプリケーションに高い優先順位を与えることはできません。
申請書を提出したい場合減らす優先順位です。ただし、ほとんどの場合、これを実行せず、システム管理者に管理を任せることができます。おそらく、「低リソース使用スペース」が販売ポイントの1つである場合は、これを達成するためにコードを書きたいと思うかもしれません。
良い値を設定するための指示はありますか?システム管理者の場合
もちろんです。これらはすべて「システムチューニング」というタイトルに属します。質問の修正版は実際にはStack Exchange形式と比較して広すぎますが、簡単に言えば次のようになります。
- チューニングする前にテストしてください。 IOがボトルネックを引き起こしている場合は、reniceを使用して問題を解決すると想像しないでください。
- デバイスを保持する実際のプロセスに優先順位を付けます(たとえば、LDAPサーバーの場合はLDAPプロセスに優先順位を付けます)。
- 不可欠なプロセスがリソースを占有している場合(仮定ではなく実際のテストで - ポイント1を参照)、これが発生しないように制限してください。
...どのプロセスがより低い値を持つべきかが見つかりません
nice
。
上記の2番目の項目を参照してください。これは機械全体の実際の使用に依存します。