Quartz .NET用于在线游戏调度

时间:2011-11-23 06:42:45

标签: .net database quartz.net

我打算创建一个在线RTS游戏,它将使用Quartz .NET更新postgresql数据库中的值。

以下是游戏中的一个场景示例。

  1. 玩家将创建一个建筑物,并且有足够的时间才能完成。完成时间将被计算并保存在数据库中。

  2. 一旦建筑物的生产开始,我将创建一个石英触发器,设置为在建筑物的完工时间到来时采取行动。触发器将启动一个作业,该作业将更新数据库中的值,提示建筑物已完成。

  3. 在这种情况下,我们可以得出结论,可以有数十万个石英触发器,可以在游戏中有大量玩家的情况下创建。

    以下是我的问题。

    1. Quartz适用于此在线申请吗?如果是的话,我应该有一个单独的服务器来托管Quartz及其作业和触发器吗?什么应该是我的服务器的最低规格?

    2. 如果Quartz不适合这个,那么可以采用哪些替代解决方案?我在网上看到很多在线RTS游戏,处理单位的制作时间的独特完成,但我没有实施它们的想法。

    3. 感谢。

      此致,

      标记

1 个答案:

答案 0 :(得分:0)

如上所述,您可以使用预期的完成时间更新数据库。此外,可能无需在完成时与您的客户同步。您可以告诉客户:除非我以不同的方式告诉您,否则此建筑将完成XYZ。

大多数游戏服务器可能不使用石英,但有些类型的事件循环。也;不要使用您的数据库进行实时更新。在内存中进行更新并在后台写入以获得更好的性能。如果发生崩溃,您只会丢失自上次直写操作以来发生的事件。