Upgrade to Pro — share decks privately, control downloads, hide ads and more …

リブセンスインフラ概要 vol.2 #TechLunch

リブセンスインフラ概要 vol.2 #TechLunch

リブセンスインフラ概要 vol.2
2012/08/01 (水) @ Livesense TechLunch
発表者:鈴木 翔一郎

Livesense Inc.

April 21, 2014
Tweet

More Decks by Livesense Inc.

Other Decks in Technology

Transcript

  1. RDBMS •  Oracle –  実行計画など細かな事を意識しなくても、それほどクエリ に長い時間がかからない事が多い –  アーカイブログを使用する事によってデータロスが起きづ らい仕組みを構築する事が可能 – 

    基幹システムなど堅牢なシステムに用いられる事が多い •  MSSQL(SQL Server) –  .NetなどのMicrosoft製品との親和性が非常に高い –  Visual Studioを用いれば、実行計画を即座に可視化する 事も可能 –  謎のデッドロックが起きる事が多いとの噂あり
  2. RDBMS •  MySQL – OSS DB シェアNo1 – レプリケーションを用いる事で冗長化構成を取る 事が可能 •  Firebird

    – OSS DB シェアNo2 •  Postgresql – OSS DBの中で、マルチバイト対応が一番早かっ たRDBMSであったため、日本国内ではシェアが 高い
  3. Master DB •  /etc/drbd.conf •  /etc/ha.d/ha.cf lvs103 Master Active lvs104

    Master Standby DRDB : データ同期 heartbeat : 仮想IP制御
  4. Slave DB •  show slave status; •  show databases; (必要なくても全DBを収容する設計)

    lvs103 Master Active lvs104 Master Standby lvs112 Slave API lvs113 Slave j-sen lvs114 Slave j-sen lvs115 Slave haken lvs116 Slave cron replication
  5. Connect to Slave DB •  /etc/keepalived/conf.d/db.conf lvs101 Load Balancer lvs102

    Load Balancer Application Server lvs113 Slave j-sen lvs114 Slave haken Load Balance Direct Routing
  6. Master DB Load balance •  ジョブセンス系 – lvs103, lvs104 – 負荷が低く売上が高い媒体が収容される • 

    ジョブストック系 – lvs105, lvs106 – 負荷が高く売上が低い媒体が収容される •  負荷が高くなれば3台目のMaster Databaseを 構築する事によってスケールアウト実施 •  show databases; (lvs53, lvs54)
  7. Master DB Load balance •  1媒体1データベースでも負荷に耐えられなく なったら・・・ •  垂直分割 – テーブル毎に収容される筐体を変更

    – 例 : image tableはDB1に収容 – 例 : image tableはDB2に収容 •  水平分割 – 同じテーブルを複数の筺体に分散させる – 例 : 会員番号1000番まではDB1に収容 – 例 : 会員番号2000番まではDB2に収容
  8. Connect to Slave DB •  Job sense派遣はSlave Databaseが1台だけ であるのにも関わらず、わざわざLoad Balancerを経由

    – 障害時にLoad Balancerの設定変更のみで復旧 可能 – 急激な負荷上昇時にLoad Balancer設定変更の みでスケールアウトが可能