モバゲータウンのノウハウ満載! フレームワークMobaSiFを使おう!

第2回 オープンソースフレームワークMobaSiFの概要・インストール

この記事を読むのに必要な時間:およそ 3 分

オープンソースフレームワークMobaSiF

前回説明したように,ケータイ向けWebアプリケーション開発を行う際には考慮すべき点がいろいろとあります。この後に説明するMobaSiFフレームワークを使うと,こういった点を簡単に処理できます。

MobaSiFの作られた背景

DeNAでは,ケータイに特化した技術要素を共通的に処理するフレームワークを2003年から開発してきており,2004年開始のオークションサービスモバオク」,同年開始のアフィリエイトASPサービスポケットアフィリエイト」,2006年開始のモバゲータウンなど実サービスに利用してきました。どれもケータイの世界でNo.1の規模を持つサービスですが,もっとも規模の大きいモバゲータウンは2008年4月時点で登録ユーザ数が1000万人を超え,月間のページビューも150億以上あります。

このフレームワークをMobaSiF(Moba Simple Framework)と名づけて,我々は2008年5月にオープンソースとして公開しました。

MobaSiFの特徴と機能

このフレームワークはPerlと一部C言語で実装されており,

  • ケータイ向けWebアプリケーションで共通的に必要な処理が行える
  • シンプルで「薄く」,全体のソースを読んで把握しやすい
  • 高速処理が必要な部分をC言語で実装しており性能が良い

という特徴を持ちます。また,ケータイ向け特化機能としては

  • キャリア・端末機種の判定
  • 端末の認証
  • 絵文字変換
  • 3キャリア対応テンプレートエンジン

を持っています。さらにMVCコントローラ(URLと処理を関連づけるディスパッチャ)やDBアクセス,daemon(常駐プロセス)ユーティリティやログ出力などの機能なども用意されているので,一般のWebアプリケーション向けのフレームワークとしても利用できます。

動作環境

動作実績のあるサーバOSはCentOS 4.xです。動作確認はしていませんが,他のLinux系OSでも動作する可能性があります。Perlはバージョン5を前提としており,モバゲータウンでは5.8.0以上のバージョンを利用しています。WebサーバはApacheを前提としており,DeNAのMobaSiFを使ったサービスではバージョン1.3.xが利用されています。ApacheとPerlの連携にはFastCGIとmod_perlが選択できますが,どちらかの機能が利用できるApacheの用意が必要です。DeNAではFastCGIのほうを利用しており,本記事もFastCGIを前提として説明を進めます。DBについてはMySQLを前提としています。

対象とするケータイ端末

現時点(2008年5月)での対象端末を表4で示します。この判断は後述のMobileEnvモジュールで行っていますので,このモジュールを書き換えればある程度の変更が可能ですが,動作しない機能も発生し得ます。

表4 MobaSiFの対象端末

キャリア端末備考
NTTドコモFOMA 90x,70x当初のリリースではiモードIDでの端末認証のみをサポートするという簡略化を行っているため,SSLを利用した状態での端末認証はサポートされない(追って対応する予定)
auWIN端末
ソフトバンクモバイル3GC型端末

著者プロフィール

能登信晴(のとときはる)

大学卒業後,通信キャリアの研究所で国産検索エンジンの研究開発に従事。2004年 1月 株式会社ディー・エヌ・エー入社。「ポケットビッダーズ」「ポケットアフィリエイト」「ペイジェント」などの開発・運用にかかわる。現在は「モバゲータウン」の検索サービス開発を行っている。


川崎修平(かわさきしゅうへい)

学生時代,ネットオークション相場サイト「オークション統計ページ(仮)」を運営。サイトを見たディー・エヌ・エー社員から呼びだされ,2002年1月にアルバイトとして入社。携帯専用オークションサービス「モバオク」を開発後,正社員となり,「ポケットアフィリエイト」「モバゲータウン」などを開発。現在,同社の取締役としてサービスの開発を行っている。

コメント

コメントの記入