gpt4 book ai didi

java - 消息架构

转载 作者:行者123 更新时间:2023-12-04 04:48:02 25 4
gpt4 key购买 nike

我正在使用 Java 后端(和 SQL Server)构建一个系统,该系统允许用户创建任务并将这些任务配置为在截止日期之前(如 1 天前、7 天前等)发送电子邮件提醒。

我担心的是,如果由于任何原因(计划内或计划外)出现服务中断,并且在中断期间会发送提醒,我如何确保在系统恢复时发送那些错过的提醒? (请注意,提醒不会得到回复或确认。)中断可能持续 5 分钟或 5 天。而且我想确保是否有正在发送的提醒队列并且中间发生中断,当系统恢复时不会发送两次提醒。

我对 Java 消息服务略熟悉,并且有可选的持久属性以及与 JMS 的同步/异步。我可以使用 JMS 来实现这个目标吗?是否有其他现有框架可以支持我想要的,而无需从头开始构建某些东西。我对开源框架或实现特别感兴趣。

最佳答案

我将首先重新定义您的要求:

  • 构建发送电子邮件的服务
  • 服务必须具有故障转移恢复功能,如果系统出现故障并重新启动,它仍应发送待处理的电子邮件提醒
  • 您不期望对发送的消息进行任何确认。

  • 考虑到这些要求,有几种方法可以做到,有许多框架和工具,其中一些可能会过度设计您的要求。这是我的建议:
  • 使用 Java Mail API 发送邮件提醒
  • 创建一个表来存储要发送的提醒并在发送电子邮件提醒后更新标志
  • 如果系统出现故障,您可以重新发送所有未设置标志的提醒。

  • 您可以使用 JMS,但由于您只需要发送有保证的电子邮件,我建议保持简单。

    干杯!!

    关于java - 消息架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17883067/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com