問題タブ [cgroups]

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 投票する
0 に答える
135 参照

php - cgroup が LAMP で機能しない

ubuntu 14.04でLAMPシステムを実行しています。1時間ごとに実行されるphpを使用したrssフィードがあり、MySQLはデータを保存します。

問題は、RSS フィードが機能している場合、Apache が 100% で実行され、MySQL が 100% で実行されるため、通常のユーザーが Web サイトを使用できないことです。

Nice などのさまざまなオプションを試しましたが、うまくいきませんでした。これが私がこれまでに行ったことです

1) インストールされた cgroup:

2) 再起動

3) ユーザー用の cgroup を作成します (上に示すように、apache はユーザー www-data の下で実行されているため):

4) 次のコマンドを実行します。

5) 次のコマンドを実行します。

しかし、他のプロセスが実行されていない場合や、MySQL などの他のプロセスが同時に実行されている場合でも、私の Apache プロセスは 100% を示しています。

コマンドを実行すると

しかし、上部の Apache は 1564 のような別の PID で実行されており、上記のコマンドで表示される PID は異なります (3001)。

私は間違いを犯していると確信しています。私は何を間違っていますか

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

android - adb shell top は私のアプリケーションをフォアグラウンドで表示しますが、実際にはバックグラウンドで表示されます

いくつかのプロセスにバインドするいくつかのサービスを備えた Android アプリケーションがあります。

私はそれadb shell top -n 1が返されることを発見しました:

アプリケーションがバックグラウンドにある場合でも、なぜtop PCYae が'fg'フォアグラウンドに表示されるのですか?

誰かがこの問題について光を広めることができますか?

これは私の Manifest.xml です:


編集 1

設定から通知を停止しましたが、まだprocess=":myServiceフォアグラウンドにありました

編集 2

ソースから:

他の質問の回答から :

ほとんど教育を受けていない、やや無作法な PCY の暗黒面での刺し傷 --

PCY -- ポリシー -- Android のメモリ マネージャーによるアプリの処理方法を決定します。

FG -- フォアグラウンド -- プロセスはフォアグラウンド プロセスと見なされ、メモリを解放するために強制終了されるべきではありません

BG -- バックグラウンド -- プロセスはバックグラウンド プロセスと見なされます (フォアグラウンドでアクティブに実行されておらず、メモリを解放するために強制終了される場合があります)

0 投票する
0 に答える
894 参照

linux - cgroups で jstorm を構成するときに、cgconfigparser を使用して cgroup のマウントに失敗しました

cgconfigparser を使用して /etc/cgconfig.conf をロードして、jstorm の cgroup プロパティを設定しようとしています。

私のOSはubuntu 14.04で、ユーザー名は「whaty」で、libcgroup1、cgroup-bin、cgroup-liteをインストールしました。/etc に cgconfig.conf がありません。なので手動で作成。

これが私のcgconfig.confです

次を使用してこの構成をロードしようとしました: sudo cgconfigparser -l /etc/cgconfig.conf 結果は次のとおりです: cgconfigparser; /etc/cgconfig.conf のロード中にエラーが発生しました: Cgroup のマウントに失敗しました

ここに私の /proc/cgroups があります:

これが私のcgroupのマウントです:

cgconfigparser の strace は次のとおりです。

特定のリソースが占有されてビジー状態になっているようです。構成の何が問題になっていますか?

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

linux - Linuxで他のプロセスが使用できないプロセスにメモリを割り当てる

特定のプロセスのメモリ リソースを制限するには、ulimit と cgroup を使用できます。

cgroup を使用している場合、1 GB の RAM を持つシステムでプロセス A に約 700 MB のメモリを割り当て、他のプロセス B には約 400 MB のメモリが必要であることを理解したいと思います。この場合はどうなりますか?

  1. プロセス A に最大 750 MB のメモリが割り当てられているが、200 MB しか使用していない場合、プロセス B は A に割り当てられたメモリを使用できますか?
  2. そうでない場合、「他のプロセスが使用できないプロセスに固定量のメモリが割り当てられている」場合のシナリオを達成する方法は?

編集

プロセスの物理メモリをロックすることは可能ですか? または、他のプロセスがアクセスできないように VM のみをロックできますか?

存続する必要があり、メモリに関して最大​​のシステム リソースを使用できるマルチメディア アプリケーションが 1 つあります。これを達成する必要があります。

ありがとう。

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

java - cgroups を使用したメモリ アカウンティングに cgexec と cgroup.procs を使用する

昨日、cgroups メモリ コントローラで興味深い状況に遭遇しました。cgroups によって報告されるメモリは、プロセスの総メモリ消費量であると常に考えていましたが、そうではないようです。

テスト用に次の Java プログラミングを作成しました。

上記を で実行すると、メモリ使用量は、JVM の PID をcgroup のファイルに ing するcgexec場合とは大きく異なります。プロセスが cgroup 内に配置された、cgroup がそのプロセスのメモリ使用量を報告しているようです。echocgroup.procs

cgroup はメモリをどのように考慮しますか? cgexecを使用すると、JVMの消費が考慮されるようです。一方、cgroup の外部で JVM を起動し、後で PID をファイルに書き込んで cgroup に移動すると、Enter キーを押して消費量が期待どおりになるまで、cgroup.procs報告されたメモリ消費量はゼロのままです。memory.usage_in_bytes1024 * 1024 * 4

さらに、 によって報告されるメモリ消費量は、たとえばcgroupsによって報告されるメモリ消費量と完全に同じではありません。top

編集:次のCプログラムを作成し、テストに使用しました。私は同じ結果を見ています。を使用している場合cgclassify、Enter キーを押すまでメモリ使用率は 0 のままです。一方、 を使用する場合cgexec、Enter を押す前のメモリ使用率は > 0 です。

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

cpu - cgroups の 1 つのディレクトリにさらに 2 つのサブシステムをマウントするにはどうすればよいですか?

私は大学でコンピューター工学を学んでいます。勉強中、私はいくつかの問題を抱えています。

1 つのディレクトリに 2 つのサブシステムをマウントしたいと考えています。

私は次のように試しました

mount -t cgroup -o cpu,cpuset cpu_and_cpuset /cgroup/cpu_and_cpuset

このコマンドは、redhat のマニュアル ページで説明されています。

Red Hat マニュアルページのリンク

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/sec-Creating_a_Hierarchy_and_Attaching_Subsystems.html

私のLinuxでエラーが発生しました。

エラーメッセージは

マウント: cpu_and_cpuset が既にマウントされているか、/cgroup/cpu_and_cpuset がビジーです

しかし、サブシステムをマウントしませんでした。
/cgroup/cpu_and_cpuset は直前に作成されます。
トラブルシューティングのために、すべての cgroup サブシステムをアンマウントしてみました。
このコマンドを再試行しました。しかし、結果は同じでした。

単一のサブシステムをマウントする場合、問題はありません。
これらのサブシステムが各ディレクトリにマウントされ、適切な属性が設定されていれば、1 つのディレクトリに 2 つのサブシステムがマウントされているような環境を構成できます。
しかし、それは私にとって正しい答えではありません。

私のコマンドの問題は何ですか?
このエラーの解決策はありますか?

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

mesos - 制限に達したときに Mesos cgroup 分離がタスクを強制終了しない

mesos cgroups 分離をテストしていました。どのようなエラーがスローされるかを確認します。以下のシェルプログラムをマラソンで実行しました。1 MB のメモリと 1 つの CPU が割り当てられています。

1 文字で 1B のスペースが必要になるため、一時文字列の長さが約 1 MB に達すると、上記のプログラムは例外をスローする必要があります。しかし、タスクはランダムに殺されるようです。タスクは、長さが1048576または 2097152 または 4194304 で強制終了されることがあります。

追加情報 - スレーブは --isolation='cgroups/cpu,cgroups/mem' で実行されます Mesos バージョン - 0.25