我有一个 servlet,它在客户端请求时将多封邮件发送到不同的地址。
由于发送邮件需要很长时间,因此客户端必须等待才能收到响应。我想异步处理邮件的发送,以更快地将响应发送回客户端。
此外,邮件的发送可以延迟到几分钟,并且不必是实时的。我不想在数据库中保存任何信息,只想在应用程序中处理。我想到的解决方案如下:
当客户端请求此 servlet 时,servlet 会将邮件列表和内容作为属性添加到 ServletContext 中并将响应发送回客户端 启动时加载一个帮助 servlet 并生成一个 timertask 线程,该线程在每次(例如) 10 分钟,读取 servletcontext 属性,发送邮件并删除属性。
请建议这是否是一个好的解决方案。如果有的话,也提出一个更好的。