MVC3在线游戏与独立的C++服务器

MVC3 online game with standalone C++ server

本文关键字:C++ 服务器 独立 在线游戏 MVC3      更新时间:2023-10-16

我有兴趣为前端网站使用 MVC3(或 4)制作网页游戏,因为这是我最习惯使用的 Web 框架。 举个例子,假设这是一个房地产游戏(有趣..)

我已经对如何以可扩展的方式做到这一点进行了长时间的思考,我遇到了以下小问题/困境:

1) 将游戏服务器逻辑编码到实际的 Web 服务器本身中。

优点:Web服务器可以直接使用实体框架,这对于数据操作非常有用。

问题:不可扩展 - 游戏几乎仅限于单个服务器,这可能会变得人口过多且速度变慢。 如果我将每个 Web 服务器用作单个"领域",它可能会起作用,但如果运行 10 个"领域",这可能会给数据库服务器带来大量负载。

2) 将游戏服务器逻辑编码为单独的C++可执行文件,甚至可能在单独的计算机上。

优点:可扩展 - 可以将多个 Web 前端服务器连接到游戏服务器,并且在任何一个 Web 服务器出现故障时不会中断。

问题:Web 服务器和游戏服务器之间难以通信。 据推测,我需要设置套接字连接并建立某种通信协议(可能使用 XML)。 此外,游戏服务器需要负责数据存储,这似乎是对MVC对实体框架的优雅支持的严重浪费。 如果需要对另一台服务器的套接字查询,MVC3 中一些简单的事情,例如检查数据库中是否已存在某些内容,将变得非常费力。

如果有人对这类问题有任何经验,你能告诉我如何最好地解决这个问题吗?

如果您已经编写了 ASP.NET 应用程序,为什么不尝试使用 .NET 编写 WCF 并编写游戏服务器逻辑呢?WCF 会完成所有通信工作,而配置有时会变得有点棘手。