“ 「外部に対し情報を提供すれば,我々が必要とする情報も入手しやすくなる」—これまで内部システムについては口を閉ざしてきた楽天が,そのシステムについて語り始めた。”
PHPは100台近く,MySQLは1億レコードのDBで使用—楽天 開発推進部長 安武弘晃氏に聞く:ITpro
この記事によると楽天は「LinuxやApacheはもちろん,数十台のサーバーでMySQLを動かし,約半数のアプリケーションでPHPを採用する,オープンソース・ソフトウエアのヘビー・ユーザーだということが明らかになった。」そうです。
商用ベンダーのソフトも使っているようですが、今や中核はLinux+Apache+mySQL+PHPという、いわゆる「LAMPシステム」で楽天のサイトは出来ているそうです。
ほんの数年前までは「LAMPシステム」は中小規模のシステム開発が限界で、大規模でミッションクリティカルなシステム開発には荷が重い等と言われていました。しかし、今から思えば、その様な言い方は何の根拠もない、もしかしたら自分たちのシェアが奪われることをおそれた、あれやこれやの商用ベンダーの「陰謀」だったのかもしれません。
今回この記事を読んで一番感じ入ったのは次の部分です。
—PHPとJavaはどう使い分けていますか。
と言う質問に対して
「最初は,信頼性が要求される部分はJavaを使用していましたが,現在はそういった区別はありません。どらちを用いるかは,今,手が空いていて開発にかかれる人間が得意としているもので決まります。楽天はサービスを作る会社で,システムを作る会社ではありません。いかに早くよいサービスを開始できるかが重要で,それが実現できるなら,極論すれば技術はなんでも構いません。」
と応えている部分。
気持ちがいいほどのプラグマティックな割り切り方です。
インタビュアーはさらにだめ押しとばかりに
—PHPは大規模開発に向かないと言われます。
と、つっこみます。
それに対しても
「大規模開発に向かないという実感はありません。いろいろな開発規約を決めて,それにのっとって開発していることが大きいと思います。」と胸を張って応えてくれています。
mySQLに関しても、「1つの機能で,1億行を超えるデータ量を持つデータベースや,1テーブルで20Gバイトを超えるテーブルなど,楽天市場にはデータ量の多いものがたくさんあります。」としながら、それでも「突然落ちるとか,データが壊れる,といった障害を経験したことはないですね。パフォーマンスが急激に悪くなるといったこともありません。」と断言しています。
これほどの実績を積み上げてきた楽天規模のサイトでもオープンソフトで構築できるという「事実」は実に重いです。