web应用程序-在CRUD web应用程序中向用户发送电子邮件通知的正确时间是什么时候?



我已经建立了一个简单的任务管理web应用程序:用户a 填写表单,点击提交按钮,将数据发送到服务器,如果数据验证用户B被分配到这个任务。

我想通过电子邮件通知用户B这个新任务。但是,用户A可以更改任务数据甚至删除任务,并且已经发送的电子邮件在这种情况下将是不正确的。

一种方法是将通知邮件延迟几分钟,然后在发送后如果需要的话更新电子邮件信息。

哪些是通知发送的最佳实践?

我想你有几个选择:

  1. 任务状态变化时发送邮件。不要包括细节;发送一个链接给用户B,让他们看到变化是什么。
  2. 这是星巴克不使用两阶段提交的一个很好的例子。用户B将容忍"脏读",因为它们不会改变生活。
  3. 按固定时间异步发送所有通知电子邮件。有一个定时任务,查询数据库,生成所有的电子邮件,并立即发送它们。任务将有机会只发送最新的一个。如果用户A分配任务,进行更新,然后删除,则用户B将只获得最后一个有意义的任务。在这种情况下,分配和删除可能导致没有发送电子邮件。只有分配或更新为最后状态才会发送电子邮件。

最新更新