mysql:15577
From: Nia Eashes <Nia Eashes <nia.eashes@xxxxxxxxxx>>
Date: Sat, 16 Apr 2011 21:42:32 +0900
Subject: [mysql 15577] Re: [mysql 15576] Re: MySQLの負荷分散について
Nia です。 森さん、返信ありがとうございます。 On 2011/04/15, at 17:44, Eigo Mori wrote: > > 森です。 > >> 今、MySQLとPHPでWebサービスを作っているのですが、 >> 負荷分散について悩んでいます。 >> >> 悩んでいるというよりは、どのような点に注意したら良いのか、 >> どんなデータベースを設計すれば最適なのか、そのための基礎がわからない状態 >> です。 >> 自分でテストできる環境があればいいのですが、それも今はありません。 > >> もしよろしければ、参考になる書籍などを紹介していただけませんでしょうか? > > もう少し具体的に状況を説明していただけると、皆さんがアドバイスを差し上げや > すいかもしれません。どのようなサービスを、どのような規模で設計されていて、 > なぜMySQLの負荷分散が必要だとお考えなのでしょう。(例えば参照が多いシステム > と更新の多いシステムでは対処法も変わってくることでしょう) ご指摘ありがとうございます。 私が相談を受けているシステムはいくつもあるので、具体的なトラブルがあるわけではないのです。 ただ、いくつか起こっている問題が「負荷分散をきちんと検討できていない」ことに 起因しているようなので、このような質問になりました。 > 広く一般的な意味で、データベース設計のお作法(教科書)のようなものはあると > は思いますが、そうではなくてMySQLの具体的な問題を解決したいと言うことであ > れば、サービスやシステムに応じてボトルネックを見つけ、それに対する解決法を > 見つけるのが道かと思います。 > > 後者に関しては奥野さんの本が参考になると思います。 > > エキスパートのためのMySQL[運用+管理] トラブルシューティングガイド 具体的な書籍を挙げていただき、ありがとうございます。 早速読んでみます。 それから、あるシステムについて(上記しましたものの、一つです) 少しアドバイスを頂ければと思うのですが……。 40程度のクライアントグループが2つ(計80台)と2台のサーバーがLAN内にあり、 クライアントはそれぞれサーバーAとBにアクセスを行っています。 サーバーAはMySQLのデータベースサーバーで、サーバーBは別の処理を行うものです。 サーバーAは、40台+サーバーBからのリクエストに対応しているような状態です。 リクエストは参照と更新が半々ですが、更新のほとんどはログの記録で、 主となるデータ(以下データ)は参照されるものばかりです。 このデータは20カラム程度のテーブルに格納されているのですが、 テーブル単位でデータの出力・入力が行われるため、 いくつものテーブルがスキーマ内に存在している状態です。 クライアントによって参照しているテーブルが切り替わります。 クライアント側では、一つのデータを取得して表示しています。 ユーザーの操作で、表示データが切り替わります。 (切り替わる際に再度データをリクエストします) この状態で、「複数のクライアントに同時に同じデータを表示させたくない」という場合、 どのようにデータへのアクセスをロックするのが最適でしょうか。 データベースへのアクセスはPHPなどによって行っているので、コネクションは毎回切断されます。 また、コネクション情報でユーザーの判別は行っていません。 現在はロックのためのテーブルを作っているというお粗末な状態なのですが……。 勉強不足もあり上手く説明できないのですが、もしアドバイス頂ければ幸いです。 -- + Nia Eashes Mail: nia.eashes@xxxxxxxxxx
15575 2011-04-15 15:38 [Nia Eashes <nia.eash] MySQLの負荷分散について 15576 2011-04-15 17:44 ┗["Eigo Mori" <eigom@x] -> 15577 2011-04-16 21:42 ┗[Nia Eashes <nia.eash] Re: [mysql 15576] Re: MySQLの負荷分散について