ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java – 我应该创建一个新的石英作业并触发一个作业和多个触发器吗?

2019-06-11 02:00:54  阅读:148  来源: 互联网

标签:java scheduling quartz-scheduler


我希望使用quartz来安排电子邮件,但我不确定采取哪种方法:

>创建新作业并在计划电子邮件时触发OR
>创建单个作业,并在每次安排电子邮件时创建新的触发器

我需要以任何方式传递消息/收件人等,而且我不确定创建大量工作是否会开始增加大量内存开销,因为很可能会安排数千封电子邮件.

更新:这些电子邮件将由用户安排,而不是我 – 所以我将在运行时以编程方式添加这些电子邮件,它们不会安排在任何特定时间出去.

解决方法:

Quartz旨在处理成千上万的触发器.此处可扩展性的主要限制是JobStore中可用的空间.支持合理数据库的JDBCJobStore应该能够处理数十万个触发器.

如果可以通过触发器的作业数据映射参数化单个作业,则为每个电子邮件创建一个作业和一个触发器. Quartz定期轮询作业存储以查找准备触发的触发器. Quartz旨在安全地处理来自此查询的任意大的结果集.

重要的是 – 这与Quartz本身无关 – 就是你有足够的带宽来执行峰值负载.如果用户倾向于将邮件安排在丛中,则需要确保拥有计算资源才能收到电子邮件.这将包括网络带宽,处理以及配置为利用可用资源的足够工作线程.

请注意,如果Quartz在执行作业时落后太多,您可以配置Quartz应该对触发器执行的操作.你可以继续尝试,跳过触发器等.

标签:java,scheduling,quartz-scheduler
来源: https://codeday.me/bug/20190611/1215289.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有