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

サーバーのパフォーマンスチューニングについての質問です。

現在、さくらの専用サーバー(http://www.sakura.ne.jp/ss/02.shtml)で
duxi(http://duxi.jp/)というOpenPNEを利用したSNSを運営しているのですが、
最近、夜になるとアクセスが増えるせいか、めちゃくちゃサーバーが重くなります。
とりあえずMySQLのチューニングとしてmy-large.cnfをmy.cnfにコピったり
したのですが、それほど効果は見られていません。
次は何をするべきでしょうか?

●質問者: studio15
●カテゴリ:インターネット ウェブ制作
✍キーワード:duxi MySQL OpenPNE SNS さくら
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● b-wind
●20ポイント

パフォーマンスチューニングは一概に「これをすればよい」というのが存在しなく、ほとんど職人芸に近い世界です。

できればアクセスパターンを見てアプリケーションを変更するのが効果が大きいと思いますが、MySQL レベルで行えるチューニングとしては、

http://dev.mysql.com/doc/refman/4.1/ja/mysql-optimisation.html

こちらに載っている事を一つ一つ確認していく事になるでしょう。


なお、書籍ではこちらが最も詳しいと思います。

実践ハイパフォーマンスMySQL

実践ハイパフォーマンスMySQL

  • 作者: ジェレミ・D. ザウドニ デレク・J. ベリング
  • 出版社/メーカー: オライリージャパン
  • メディア: 単行本

◎質問者からの返答

ありがとうございます。


2 ● hamster009
●20ポイント

http://dev.mysql.com/doc/refman/4.1/ja/which-version.html

必要な言語モジュールだけ組みこんで、コンパイルし直せってこと。

なるべく文字コード変換が必要ない設定にする。

◎質問者からの返答

ありがとうございます。


3 ● kurukuru-neko
●20ポイント

問題解決する場合には現状を把握

された方がよいと思います。

(MySQL/CPU/MEMORY/DISK/LAN)

MYSQLに関してはMYSQLの性能測定ツール

mMeasure

があります。


http://mmeasure.sourceforge.jp/

http://www.timedia.co.jp/news/1608614249/@@index.html

mMeasure 利用ユーザのblog

http://www.multiburst.net/project-multiburst/archives/2006/07/31...

◎質問者からの返答

さっそくインスコしてみました。


4 ● tobeoscontinue
●20ポイント

当初、さくら専用サーバーの回線の問題ではないのかなぁと思ったのですが102Gbpsということなのでこれは原因ではないでしょう。しかし共有しているので他からの影響は否定できません。トラフィックレポートを見てみると22時ごろから数十Mbのトラフィックになっているのでその辺の理由ではないかなぁと思います。トラフィック制御がどうなっているか解りませんが単純に重いトラフィック(映像、音楽)が終わらないと次が処理されないようならサーバーが重く感じられると思います。


マシーンスペックもまず十分なレベルだと思います。これで『めちゃくちゃサーバーが重くなります』という状況を作ろうとすると相当なリクエストが必要と考えます。そうでなければ別な問題があるように思います。たまに重い処理が走っているとか。サーバの保守はご自身で行うということなのでapacheのログをみてレスポンスタイムはどの程度か確認する。ディスクの空き容量は十分あるか確認する。(空きが十分ないと使い回すために余計な処理が発生する)


単純な構成としてApache、PHPが動いていてリクエストに応じてphp scriptが実行されます。その中の更に一部にsql文があります。MySQLのチューニングで現在の1/2にもできないと思います。それにOpenPNEでは基本的にテキストを返すだけなので数秒で終わると思います。それを多少改善しても、体感として早くなったと感じるのは難しいように思います。

◎質問者からの返答

SQLを発行しないページに関してはそれほど重くもないので、おそらくMySQLまわりがネックになっているかと思われます…


5 ● peppon
●20ポイント

MySQLのキャッシュなどを見直してみてはどうでしょうか。

できるだけキャッシュに回るようにしてみるのがいいかもしれません

http://itpro.nikkeibp.co.jp/members/ITPro/oss/20050213/156109/?P...

後はApacheを画像、HTML等のフロントエンドと、PHPの処理のみに利用するバックエンドサーバーと二つで振り分けるのも手かと思います。

それにより空きメモリが多少増えると思いますので、その分MySQLに振り分けるとかしてみるといいかもしれません。

関連質問


●質問をもっと探す●



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