我正在创建一个通知任务。我有一个创建任务的web界面。所以,我有两个表,一个是NotificationToBeReleased,另一个是通知。我想在服务器上运行一个windows服务,找到所有deliveryDate,并开始向用户发送电子邮件,从NotificationToBeReleased中删除行,然后进入Notifications表。
我是新手,良好的基础起步会对我有很大帮助!或欢迎任何建议。
要启动计划任务,请查看Quartz.net。
对于小型通知项目,您建议的解决方案,即轮询数据库中的交付日期,将在一定程度上起作用。当您需要检查任何问题时,问题就会出现。例如,如果电子邮件发送失败,会发生什么?它应该离开那一排,每分钟都检查一次吗。如果电子邮件确实发出了,但我们未能清除这一行,该怎么办。用户被电子邮件淹没。
如果您追求scalability,那么轮询数据库以获取要发送的通知可能会成为一个问题。最好使用企业消息队列解决方案。数据库作为队列反模式