サーバレスのオンラインゲームをつくってみた

アクセスはこのボタンから↓

どんなゲーム?

ちょっと変わったリバーシのオンライン対戦型ゲームです。

こんな見た目です↓ (最新のものとは異なる部分があるかもしれません)

いつものリバーシ(またはオセロ)とは違いますよね。

いくつか独自のルールを盛り込んでおり、これまでの定石が通用しないものになっています。

 

ステージ選択画面があり、様々な形状のステージから選択できます↓ (普通のリバーシも選択できます)

対戦型なので、オンラインで2人で遊べます。

 

ゲームへのアクセスはこちらから↓

アルファ版なのでまだ不安定な部分があるかも知れません。もし何か見つけた場合はコメント欄でもメールでも構いませんので教えていただけるととってもとっても嬉しいです。


サーバレスって?

ここからはちょっとだけ技術的なお話。

サーバレス=Serverless=サーバが無い という意味。

このゲームはWebサーバ上では稼働していません。

Amazonクラウドの上にアプリのすべてが置いてあり、クラウド上で稼働しています。

主に使っているAmazonクラウドのサービスは次の3つ。

  • API Gateway
  • Lambda
  • DynamoDB

ソースコードはこちら(GitHub)

システムの大まかな設計は次のようになっています。

従来のWebサーバありきの設計でやってきた人にとって目新しい点といえば:

  • クライアントに必要なHTML/JS/CSSファイルとメディアファイルはすべてS3上に配置している。
  • “サーバサイドプログラム” に相当する処理はすべてLambdaで実現している。
  • APIはすべてAPI Gatewayで実現している。
  • “サーバサイド” に必要なデータはすべてDynamoDBで管理している。

くらいでしょうか。

手探りでやってきたので、時間・金銭的にもっと効率的なやり方はあるかも知れません。

システム全体の効率的な管理がしたいので、これからCloudFormationの勉強は必須かなと感じています。

コメントする