使用Akka.Net计划有条件的电子邮件

92vpleto  于 2022-11-06  发布在  .NET
关注(0)|答案(1)|浏览(173)

我需要实现以下逻辑-我向用户发送一条消息,如果他没有回复,我会在12小时后再次发送。我想知道实现这一点的最佳方法是什么?我考虑使用Akka.NET -在一段时间后,执行者会检查用户是否回复了我的消息,如果没有,则会再次发送。
有没有更简单的方法?如果没有,有一些问题要问Akka .NET

  • 你知道有什么好的资源可以让我了解这个库应该如何在ASP.NET核心中使用吗?文档对我来说不够清楚。
  • 在哪里保存参与者和与他们相关的逻辑?在一个单独的项目中?我在哪里可以创建一个actorSystem?

我是这个主题的新手,提前感谢你的所有答案。

b4lqfgs4

b4lqfgs41#

我的理论是,您可以使用标准actor系统安排一个消息顺序,在12小时后重新发送一封电子邮件,但这有一个自然的问题,即如果您的进程崩溃,它在内存中的所有状态都将丢失。
在实践中,您可以使用两个现有插件中的一个,这两个插件为您提供持久的时间表:

  • Akka.Persistence.Reminders,它在Akka.Persistence上工作,所以你可以在任何akka.net持久性插件上使用它。
  • 另一种方法是使用Akka.Quartz.Actor,它在Quartz.NET之上提供专用的参与者,并利用Quartz的持久性功能。

相关问题