人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

?SQLの本を読んでいたら、メモリについての書いてあったのですが、「データが大きくなった場合は、全部メモリに読み込んで処理するのではなくて分散して処理する必要がある」ということが書いてありました。メモリやCPUの処理の分散について知りたいのですが、具体的にこんなコードで処理を分散するこんな関数でCPUを使用率を調べるなど、具体的なコードが書いてある本、ページを教えてください。Perl勉強中なのでPerlがよいですが、難しくなければ他の言語でもいいです。
?また、qmailでメールを一斉送信する場合のサーバの負荷を調べて、送信の量を制御する方法も簡単にご説明をお願いします。
※プログラミング初心者です。
※?、?どちらか片方だけの回答でもかまいません。

●質問者: rain2003
●カテゴリ:コンピュータ
✍キーワード:CPU Perl qmail SQL コード
○ 状態 :キャンセル
└ 回答数 : 1/1件

▽最新の回答へ

1 ● inosisibeyan

◯1コマンドラインならtopというコマンドで、現在のCPU・メモリの使用状況が数秒単位で表示されます。

私の経験では、メモリの上で実行出来る限界までなら何の工夫もいらないので、データを最適化や正規化をやって一つ一つのデータを小さくするのが早道です。

どうしても、データの大きいままで実行しなければならなくなってからメモリの上でやるかどうか考えるといいと思います。

メモリ上でデータベースを実行するコマンドはありますが、逆はデフォルトではHDD上でデータを持ったまま実行しています。

最も使用頻度の高いデータのみをメモリ上に展開して、使用するというのが一般的なやり方のように思います。

http://marijuana.ddo.jp/xoops/modules/newbb/viewtopic.php?to...

データベースの実行時間の計算の目安としては、テーブルの容量を掛け合わしただけの時間がかかる物なので、出来るだけ容量を減らしてから実行するのが基本と思います。

キャッシュや、バッファの容量を変更するなどや回りのアプリケーションとの関連も有りますので、総合的に判断する必要がありますが、分からないときにはMySQLの各種confをコピーして使うのも一つの手です。

これは一例ですが、以下のようなconfが私のPCには上がっておりました。参考まで

/usr/share/doc/mysql-server-5.0.18/my-huge.cnf
/usr/share/doc/mysql-server-5.0.18/my-innodb-heavy-4G.cnf
/usr/share/doc/mysql-server-5.0.18/my-large.cnf
/usr/share/doc/mysql-server-5.0.18/my-medium.cnf
/usr/share/doc/mysql-server-5.0.18/my-small.cnf

◎質問者からの返答

ありがとうございます。ちょうどMySQL使ってました。初心者といってもほんとにプログラミングやパソコンの仕組み勉強始めたばかりだったので、難しかったのですが何とかわかりました。topはlinuxのコマンドでMySQLのサーバのお話ということでよろしかったでしょうか。cnfはサーバの設定ファイルのようですね。

説明不足と私の文章がおかしかったようです。申し訳ございません。以下、加筆をさせてください。

本に書いてあることですが、掲示板のスクリプトのコーナーでした。fetchall_arrayrefで結果を全部メモリに溜め込むという話です。データが大きい場合はメモリ不足を起こすことがあって、読者の宿題にするということでした。例えば、スクリプト側でどういったふうに書いて負荷の情報を取得して、分散させるのかを知りたいです。それとも負荷のあることを予想して書くのでしょうか。そこで、同じようにスクリプト側で、CPUの負担などについても管理する例がないかとふとおもいまして、qmailについてもスクリプト側で負荷情報を取得して、ペースを調節したりできるのかあわせて質問させていただきました。

例えば、レンタルサーバで、CGIを動かすときなどCPUやメモリなど考えなくても大丈夫なのでしょうか。サーバ側で、メモリ不足のときの処理など自動で分散してくれるのでしょうか。

よろしくお願いします。

[追記]自分でも調べているところですが、qmailはメモリ、CPUではなく通信状況を調べることになるんでしょうか。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ