2012-06-02 15 views
5

WebsocketとHTML-5テクノロジを使用して簡単なWebゲームを作成したいと思っています。私はPlayフレームワークとScalaでこれを行うことを考えています。しかし、私が作ろうとしているゲームの種類は、物事が起こる永続的な世界であり、プレイヤーの行動の結果としての意味だけでなく、Playの無国籍哲学に合わないということです。私は、実行アプリケーションで別のスレッドを起動しようとしました。これは、実行中の世界で通常の永続的なゲームサーバーとして機能し、動作するようです。あなたはどうしたらそれについてコメントできますか?ゲームサーバーとしてのフレームワークを再生

  • 私はこのアプローチにいくつかの大きな問題に直面しますか?
  • これは優れたソリューションとセットアップですか? pplは通常、スタンドアロン(http以外の)スタンドアロンのゲームサーバー以外のものに何を使用しますか?
  • 同様の問題を考慮して面白い経験を共有できますか?
+5

私はそれが完璧になると思います。この意味でのステートレスとは、要求の間に保持されるユーザーセッションの状態を意味しません。もちろん、状態は、永続的にデータベースに格納されているか、状態の良いAkkaアクターのキャッシュに一時的に保持されています。後者はあなたの方法である、IMHO ;-) –

+0

素晴らしいコメントは、実際には、答え、特に活動を見て)に適合する)))励ましてくれてありがとう、私はタイプセーフスタックに行きます。 – noncom

+0

幸運;-) Googleグループでどのように機能するか教えてください! –

答えて

4

「の情報を更新し、常に実行中のスレッド」と台無し永続にしないでください。

ほとんどの場合、このようなゲームは最後の更新時間を保存するだけで、現在と最後の更新の間に経過した時間に基づいて新しい値を計算します。どんなWebフレームワークや技術でもそれが可能です。 私が大きなplayframeworkファン/中毒者でも、私はそれ自体で永続的な議論が十分ではないと思います。

しかし、あなたが必要な場合は:大規模なサーバ

なし

  • 良いWebSocketを統合、
  • サポート交通渋滞、
  • 大規模な同時実行は、確かに、Playframeworkはあなたの選択であるかもしれません。

+0

私はあなたが言っていることを理解しています - その時から状態を計算することについて。しかし、変更可能なオブジェクトが多数存在し、機能的なアプローチは計算上非効率的であるはずです...すべてがMongoDBによってバックアップされますが、文字通り、 "バックアップされました" - 私はそれを使いたいだけです*日々のスナップショットとサーバーのシャットダウンの場合私はPlayがやると思う。私は、概念実証ソリューションを実装しました。今はそれを育てることの唯一の問題です。 – noncom

+0

その場合は幸いです;) –

関連する問題