谁可以成为 JMS 的客户

Who can be clients in JMS

我有电子邮件列表(很多)。我想写一个定时发邮件的scheduler

  1. 我从数据库读取邮件
  2. 我发消息到这个邮箱。

据我所知,为了获得良好的性能,最好使用 JMS (Topic) 来实现。

在文档中我读到主题向所有客户端发送消息。你能告诉我 "client" 在这种情况下是什么意思吗?在我看来,在我的示例中,他们是电子邮件的所有者,我的系统会将消息文本发送给该电子邮件的所有者(客户)。对吗?

否,在此上下文中,"all clients" 表示所有 java 进程都已开放订阅该主题。

您需要编写代码将 JMS 转换为电子邮件(并发送)。 Spring Integration 之类的框架可以用于此,它会为您完成所有繁重的工作;您只需连接 JMS 消息驱动通道适配器以从队列(而非主题)接收消息,执行 JDBC 查询以获取电子邮件,然后通过邮件出站通道适配器发送它们.

阅读项目文档以获取更多信息(上面的项目页面 link 中有 link)。