5

我正在开发一个 HTML5 多人游戏。谷歌最近一直在做一些这样的事情,但没有发布任何关于他们是如何制作它们的信息。

  • 我希望客户端和服务器之间的连接是套接字;不是旧的长轮询黑客。

  • 存储应该是 nosql / google 数据存储。

  • 框架应该是 Python 或 JS。

现在,我不能将 websockets 与 Google App Engine 一起使用,这意味着我必须使用 Google Compute Engine (GCE)。我应该在 Compute Engine 上运行多少服务;100% 或仅套接字和 AppEngine 上的后端的其余部分。这似乎是一个很好的方法,但是 GCE 在欧洲,App Engine 还不支持这个位置,这意味着 GCE 必须在大西洋上来回交谈。

另一方面,我可以在 GCE 上开发整个解决方案,但我应该使用什么存储和开发人员库?我可以使用新的 Google Cloud Datastore,但如果我理解正确,它就像一个用于与数据存储区对话的低级 API。我喜欢 ndb 对模型的高水平处理并注意缓存。对于解决方案,我应该使用 nodejs、django 还是其他东西?

4

1 回答 1

3

在 App Engine 上运行 Web 前端,同时在 Compute Engine 上管理 websocket 连接,这与 Google 为最近的 Chrome 网络实验所做的类似(请参阅本文的结尾)

查看由日本 Chrome 团队开发的令人惊叹的 World Wide Maze Chrome Experiment。该游戏可将您选择的任何网站转换为交互式三维迷宫,并通过您的智能手机进行远程导航。Compute Engine虚拟机运行 Node.js 来管理游戏状态并与移动设备同步,而Google App Engine则托管游戏的 Web UI。这个应用程序提供了一个很好的例子,展示了谷歌云平台支持的新型丰富、高性能的后端服务。

填写以下表格或注册高级帐户后,您还应该能够在欧洲创建 App Engine 应用程序。

Google Cloud Datastore允许您在 App Engine(如果您使用 Python,则使用 NDB)和 Compute Engine(使用低级 API)之间共享数据。

您可以关注有关 NDB 对 Google Cloud Datastore 的支持的问题。

于 2013-06-03T04:35:34.650 回答