- - PR -
メモリバッファをクリアする方法
1
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-08-02 23:52
こんばんは。
UNIX、LINUX系OSを連続稼働しているとメモリ使用率がじりじりとあがっていきます (監視サービスのメモリ使用率の監視webページでみています)。 こういう風にあがっていったメモリ使用率を下げるのによいコマンドってないでしょうか? いつもこの場合、頃合いをみて再起動してしまっているのですが、 どうしても再起動できない場合の対処方法として何かあればご教授ください。 あと、システム全体のメモリの使用率を確認するコマンドってありましたっけ? psとかだとどうも見づらくて。 よろしくお願いいたします。 | ||||||||||||
|
投稿日時: 2004-08-03 00:23
ごく自然な、問題ない動作です。 瞬間的(2、3秒とか)に大量のメモリを要求する動作が発生しない限り、 空きメモリはほとんど無くても構いません。 # 現代的な Unix における仮想記憶システムは、そういうふうに出来ています。
vmstat ですね。 | ||||||||||||
|
投稿日時: 2004-08-03 00:34
こんばんは。
どのような形式を望んでおられるかによりますが、コマンドラインベースでしたら top は駄目ですか?
確かに単調増加しますが、この数値をどこまで鵜呑みにしてよいか、という点を考えておく 必要があるかもしれません(ただし神経質にならなくてOK)。また、増加率が著しい場合は、 それがどのプロセスかを検証して、そのPGにメモリーリークの可能性がないかを調べる必要が あるかもしれません。
すいません、これはわかりません。 [ メッセージ編集済み 編集者: Ken-Lab 編集日時 2004-08-03 00:48 ] | ||||||||||||
|
投稿日時: 2004-08-03 00:48
ぽんすさん,
ken-labさんレスどうもです。 引用 ------------------------------------------------------------------------- ごく自然な、問題ない動作です。 瞬間的(2、3秒とか)に大量のメモリを要求する動作が発生しない限り、 空きメモリはほとんど無くても構いません。 # 現代的な Unix における仮想記憶システムは、そういうふうに出来ています。 --------------------------------------------------------- なるほどー。 ただ、データセンタのサービスで監視をしているのである一定の閾値を超えると通報 が出てしまいます。 それを避けたいのですが、やはり再起動しかないでしょうか? あと、メモリが少なくなってくるとマシンが不安定になったり重くなったりしないも のですか? PGのメモリリークまでは現在みれていません。 その辺もきっと確認していく必要があるのでしょうね。勉強になります。 プロセスが増えていたりしてもアプリの使用を完全に把握していないため落としてよいものやら、という状態です。 それとは別にプロセスとしてたっているもの以外でゴミのようなものがたまって使用率があがっていくことってないでしょうか? vmstatやtop、早速利用してみます。。 | ||||||||||||
|
投稿日時: 2004-08-03 13:08
メモリリークの可能性は、頭から抜け落ちていました。
そうですね、リークしていればどんどん増えるはずですし。 リークしてるプログラムをそのまま使う必要があるのであれば、 そのプロセスを定期的に再起動する、とかでしょうねえ。
むしろ、監視のほうを変えるべきと思います。 たとえば Solaris だと三つくらいのパラメータで「空きメモリを どれだけ確保するか」という設定をするようになっていたと思いますが、 その設定値のところまでは OS がメモリを使いますので。 監視をそちらに合わせるべきでしょう。 Linux(カーネル2.4以降)だと厄介なのですが... 空きメモリの大きさを設定できないので。 # いまの Linux の仮想記憶だと、キャッシュに使っている領域から # 直接、他に転用できるようになっているので空きメモリは要らない、 # ということなのだと思いますが。 これはもう、「Linux を信じるかどうか」という問題ですかねえ。 # 信じるとバカをみることもあるような気がしますが ![]()
それはない「はず」です。
それもない「はず」です。 # OSそのものがバグっていない限り。 | ||||||||||||
|
投稿日時: 2004-08-03 14:34
> # OSそのものがバグっていない限り。
プログラムがバグっている場合にもありえますよ。共有メモリを使っているプログラムとか。 > vmstatやtop、早速利用してみます。。 linuxはfreeの方が見やすいです。「-/+ buffer/cache: 」で表示されるfreeの値が実質のfreeの値です。 HP-UXだと/usr/sbin/swapinfo、solarisだと/usr/sbin/swap -s、sar -rとかもありますね。 | ||||||||||||
|
投稿日時: 2004-08-03 20:44
「System V 系 IPC は、存在自体がバグだ」ということで手を打ちませんか? ダメ? じゃあ、「いずれ天井にぶつかるからいいんじゃない?」ということで。 # 天井にぶつかってしまったら、まずいことが起こってそうですが ![]() ## あ、いえ、もちろん System V IPC のことを忘れていたわけなんですが。 |
1