2007年02月21日

Mixiの裏側

BKCon 2006
これはなかなか興味深い内容。Mixiのシステムについて書かれている。
ちょっと前の内容なので今は変わってるだろうけど。

サーバ関連のソフトなどは以下の通り。MySQLのメジャーバージョンから違うのにワロタ。普通にSQL発行する分には同じって事なんだろうけど。
Linux 2.6
Apache 2.0
MySQL (4.0, 4.1, 5.0)
Perl 5.8

DBサーバで100台って言うのはすごいな。今頃150台ぐらいになってるんだろうか。DB屋さんからしたら当たり前のことなんだろうけど、DBの負荷分散の仕方は勉強になったなぁ。データマイニングは性別によって広告を変えるだけしかやってないとあるけど、日記の内容によって変えるとかすれば劇的にクリック率が変わる気がするけどそれはやらないんだろうか。1週間に1回日記の内容から興味のあるカテゴリを出すだけでもいいし、計算量はそれほど多くないんじゃないかな。

MySQL使われてるけど速度はどうなんだろうと見てみたら、やっぱりPostgreSQLとMySQLだったらMySQLの方が速いみたいだな。トランザクション機能のあるInnoDBだったらそれほど大きな違いがあるとは言えないけど、トランザクション無しだったら爆速だ。

言語はPerlだけど、Perlは遅くないのかな?と思って検索したら各言語でベンチマークを取るページが見つかった。
それによるとPHPとは同じぐらいかちょっと速い。Javaと比べるとJavaより結構遅いという感じか。
でも記事を読む限りDB周りがキモと言うことで、スクリプトの実行時間はたいした問題ではないのかもしれないな。それよかメンテナンス性の方が問題か。やっぱ規模が大きくなるとJavaの方が良いよ、うん。Perlは知らないけどPHPでのシステム開発はいろいろ問題あったし。

Mixiの日記など全部のデータがRDBに入っているというのがなんか「すげー」と思った。負荷分散をしっかりすればいけるものなんだなぁ。

いや~、こういう話はなかなか外に出にくいからためになるなぁ。すばらしい。

Trackback on "Mixiの裏側"

このエントリーのトラックバックURL: 

"Mixiの裏側"へのトラックバックはまだありません。

Comment on "Mixiの裏側"

"Mixiの裏側"へのコメントはまだありません。

Post a Comment

コメントする

コメント登録機能が設定されていますが、TypeKey トークンが設定されていません。