現状のlivedoor Blogのシステム構成を、中の方が解説してくださいました。
個人的には、もう少し時間をかけてゆっくり聞きたかったセッションです。ものすごく参考になりました。
講演者
- 垣内秀之 氏
- 株式会社ライブドア メディア事業部 ブログBU開発グループ
livedoor Blogのサーバ構成
- 2003年11月OPEN
- 270万ユーザ
- 5000万PV / day
- 10万投稿 / day
- データ量 約16TB
※ 約1年前のデータとのこと
システム構成
フロントエンドにロードバランサ
- portal-www, cms-www
- apache2.2 + mod_proxy_balancer
- portal-app, cms-app
- apache1.3 + mod_perl + sledge
- blog-www
- apache2.2 + mod_ldblog_mapper2 + mod_include (SSI)
- blog-app
- apache1.3 + mod_perl + sledge
- DB
- MySQL
- user-cluster DB
- 記事、コメント、デザイン
- user単位でパーティショニング
- 1 clusterあたり1〜2万user
- 150clusterくらいある、分割は手動での運用
- Storage
- 商用ストレージを使用
- 数個のノード
- blogのフロント部分と、ほぼ全てのappがNFS mountしている
- 静的ファイルキャッシュを格納
- image Storage
- 商用ストレージのコスト問題により新設
- appからはWebDAVで接続
- squid -> apache(振り分けしている) -> mysql
- dispatcher, replicationをapache moduleで実装
まとめ
- apache + mod_perl + sledge
- user-blog側の多い処理は、apacheモジュール化している
- 一部、DRBDやLVSを使っている箇所もある
- ほとんどのサーバは二重化されている
apache独自モジュールについて
mod_ldblog_mapper2
- URL to UserPath(NFS)変換モジュール
- memcached / DBの参照結果を環境変数にセット
- どこにデータがあるかを問い合わせて、
- キャッシュにあれば、、、静的ファイルキャッシュから返却
- なければ、、、ファイルキャッシュに貸し出し
- どこにデータがあるかを問い合わせて、
静的ファイルキャッシュ
- プラグイン部分がキャッシュの全ページに存在
- 何か更新されるたびに、ほぼ全てのページの再構築をする必要があった
- なので、プラグイン部分を別ページ化
- で、mod_include(SSI)を使って挿入するようにした
- 再構築は、ファイルを削除して、次にアクセスされた際に、再度書き出しているのみ(遅延rebuild)
新管理画面について
- 3年半ぶりのリニューアル
- UIをEUC-JPからUTF8へ
- ブログ保存データも、新規ユーザからUTF8化
- 管理画面のURLを変更
- マルチブログ / グループブログ / テーマブログ
表側
- jQuery + jQuery UI
- swfupload
文字コード多重化
- blog単位でcharsetを切り替える必要がある
- 旧CMS、Portal、既存BlogはまだEUC-JP
- 新規ユーザからはUTF8
本文やコメント以外にも色々あって、手動変換は大変すぎる
なので、ORマッパーのアクセサーの部分で、文字コードを比較して、必要に応じて変換処理を行うものを組み込んだ。
管理画面のURL変更
- livedoor.comのSSOからの分離が主目的
- livedoor auth(OpenID)と連携して自動ログイン
新サービスについて
- livedoor Blog ASPやります!
- 2009/4より開始予定
- livedoor BlogをOEMとして使える
- OEMで登録されたユーザも、ライブドアブログに書き込んだりできる
OpenIDについて
- 既にlivedoor Auth OpenIDとして提供中
- OPだけじゃなくて今後はRPに?
- OpenID2.0を採用
最後に、ASPパートナー募集中!とのこと
その他、質疑など
- user-Blogは結構、攻撃されることが多い
- 10秒でアタックを防御する(mod_dos_deteceter)ものがあったり
- スパムをブロックするブラックリストを持っていたり
- (これ以上は、あまり公開できない、と)
第1回ライブドアテクニカルセミナー 関連エントリ
- 第1回ライブドアテクニカルセミナー「インサイド livedoor Blog」講演メモ
- 第1回ライブドアテクニカルセミナー「ライブドアのネットワークとトラフィックパターン」講演メモ
- 第1回ライブドアテクニカルセミナー「P2Pコンテンツ配信技術の現状」講演メモ
- 第1回ライブドアテクニカルセミナーへ行ってきました
[24時間365日] サーバ/インフラを支える技術 ?スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ)
- 作者: 安井真伸,横川和哉,ひろせまさあき,伊藤直也,田中慎司,勝見祐己
- 出版社/メーカー: 技術評論社
- 発売日: 2008/08/07
- メディア: 単行本(ソフトカバー)
- 購入: 133人 クリック: 2,270回
- この商品を含むブログ (288件) を見る