Mysql:何时使用触发器

时间:2012-04-25 06:36:10

标签: mysql triggers

我目前正在制作一款在线多人国际象棋游戏。我想知道用户触发器是否适合登录每个动作。

然后,使用nodejs,我会重复检查触发器表并更新两个玩家的视觉效果。观察者。

由于我只需要在数据库中进行更改,因此可视化方面将自动跟进(使用重复功能检查数据库中已更改的数据)。这样做的目的是将视觉效果与制作游戏所涉及的逻辑分开。

你们中的任何人都会推荐这种技术,或者只是不推荐吗?

1 个答案:

答案 0 :(得分:7)

您为自己的任务描述了一种可能的技术解决方案。但我强烈建议不要这样做。

这不会很好地扩展 - 它会给数据库和应用程序服务器增加很多开销和负载。

还有其他轻量级可能性可以更好地扩展:

  • 使用与redis客户端一样的消息队列(例如)node_redis。它具有内置的pubsub语义。
  • 抽象数据库调用并将所有数据库更新推送到消息队列。
  • 而不是使用“重复”功能(AJAX轮询)来获取状态更新,您可以使用HTTP流媒体,例如jquery-streamjquery-socket。这避免了为每个客户端更新打开新HTTP连接的开销。
  • 使用服务器端nodejs的事件驱动功能将新事件推送到客户端连接。