ソケットサーバーをつくろう
サイバーエージェントのアメーバピグのAndroid版の開発事例がありました。
「アメーバピグ for Android」 開発事例
http://www.adobe.com/jp/joc/devnet/air/articles/pigg_ameba.html
サーバーサイドはJavaでSocketサーバーを書いてますね。
今運用してる携帯向けCGIのWEBサービスですと、
携帯ブラウザ→GET/POST(HTTP通信)→Apache→Perl→TokyoTyrant
ですが、ピグやMMORPGのようなゲームだと15〜20fpsとか出すためには、
1秒間に15〜20回も通信しないといけないので、余計なプログラムを排除しないと厳しい
(速度的にもメモリ的にも)
↑ただ、SpeedyCGIで常駐してるのもあって、プログラム自体は5msで動いてます。
通信遅延はApacheを排除して、HTTPをソケット通信にしても減らないので、
どうでしょうね? ただ、Apacheが無くなるメモリ省力は高いでしょうけど、
4GBx2で8000円の時代ですからね(^^;
webサーバーを撤廃して、
アプリ→ソケット通信→ソケットサーバー→TokyoTyrant
とすれば、ソケット部分はバイナリも可能だし、
ソケットサーバーをC言語で書けばかなり早くなるはず。
最適化されるはずですからJavaで充分だし、自分ならPerlでもいいかな
というわけで、perlでソケットサーバーを作って、
Airのアプリと通信するC/Sシステムを作ってみたいと思います。
ずばり速度重視
本当はTokyoCabinet相当部分をソケットサーバーに組み入れてしまうのが一番良さそう
サーバーサイドの機能を絞り込んで、
すべてC言語で書いてしまえば最強でしょう。
高いので本屋でちょっと立ち読みしたことしかないけど、
MMORPGのサーバーサイドだと以下のような書籍が。
韓国のゲームメーカーの本(確かC++)
MMORPGゲームサーバープログラミング (Game developer)
- 作者: ナムジェウク,蔡七美
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2005/08/31
- メディア: 単行本
- 購入: 4人 クリック: 142回
- この商品を含むブログ (31件) を見る