タグ

ブックマーク / rakuto.blogspot.com (2)

  • [Vol.3] RailsとMySQLによる大規模サイト構築実験 

    MySQL + Railsで大規模サイト構築実験もいよいよ大詰めです。 前回までは、 DB : Active-Active LB : Active-Passive 構成を想定して構築してきました。 また、レプリケーションの遅れによる更新の衝突を避けるための解をいくつか紹介しました。 だがActive-Active構成にするコストが大きい!! 「そもそもActive-Active構成で組む必要があるのかどうか?」といった疑問が沸いてきました。 調査を進めたところ、DBのActive-Active構成にするコストに対して、メリットが少ないことが判明。 [Active-Active構成を組むメリット] 瞬間的なコネクション増への対応が可能。 コネクションの負荷分散のみ可能。(I/Oの負荷分散はできない) [Active-Active構成を組むデメリット] 更新系クエリの負荷分散は不可。 レプリケ

  • [Vol.2] RailsとMySQLによる大規模サイト構築実験

    vol2でも引き続き、負荷分散・高可用性を備えるDBとWEBアプリケーションフレームワーク(以下AF)のセットアップを目指します。 デュアルマスタ構成に複数台のスレーブがぶら下がっています。 もう少し、詳しく今考えているアーキテクトを見ていきたいと思います。 最小構成: マスタ2台, スレーブ1台 最低3台のDBを用意します。 なぜ3台か?スレーブを追加する際には、マスタのスナップショット取得のためにマスタへの更新を停止する必要があります。データ量が増えると、マスタを停止してスナップショットを取得するには、長時間を要するため、これは現実的な解ではない。 そこで、スレーブをマスタのスナップショットとして考え、スレーブへのレプリケーションを一時停止し、スレーブのスナップショットを新規に用意したスレーブにコピーしレプリケーションを設定する。 スレーブが1台しか存在しない場合でのスレーブ停止時は、

    [Vol.2] RailsとMySQLによる大規模サイト構築実験
  • 1