2013-09-23 94 views
0

我希望每次将新课程添加到lessons表中时,都会向该级别的所有学生发送通知。假设我在五年级有10,000名学生,这意味着在notifications表中有10,000个插入操作,这是一项巨大的负担。MYSQL向多个用户发送通知

有关如何向用户发送通知的更好的主意,知道用户只能看到通知ONCE。

+2

如果10,000 db操作对您的db来说是一个巨大的负载,那么我建议升级您的db和/或db服务器。对于运行一个体面的关系数据库系统的现代计算机,10,000个查询是** NOTHING **。 –

+0

@MarcB我只是假设,如何约1,000,000?或者更多?我正在寻找一个更好的办法来处理这种情况。 –

+0

您可以查看云解决方案,例如http://aws.amazon.com/sqs/ – jancha

回答

1

看来,通知过程可以异步。

我建议为此场景开发一个单独的消息队列体系结构。程序会加载新添加的数据并将它们放入队列中,然后另一个进程可以读取队列并(例如发送电子邮件给用户)。您可以添加更多的队列使用者来管理更多庞大的数据。 当然,您将需要一个MQ服务器。

要获得异步开发的填充,请参阅http://www.rabbitmq.com/getstarted.html,其中有很好的Rabbit MQ示例(Rabbit MQ是开源的Java基本消息传递服务)。