オンラインゲームのサーバー実装
オンラインゲームのサーバーといえば、ネットワーク処理大好きなプログラマなら一度は作ってみたいって思うはず。
「オンラインゲームのサーバー」って具体的にどんな構成のもの?
- ユーザー認証
- オンラインのユーザーを管理
- ユーザーのマッチング・部屋分け (lobby, room などとよく呼ばれるもの)
- 部屋内でのパケットリレー
このあたりは様々なゲームで共通と思われる。もう少しプログラミングよりで考えると、重要なのは以下の項目
- 不正なアクセスができないこと(セキュリティの設計)
- 同時に多くのユーザーが接続しても大丈夫なこと(並列処理の設計)