我在我的 Web 应用程序(在 Tomcat 中运行)中使用 Quartz 框架,到目前为止它运行良好。我将有大约 10-15 个作业在一天内运行几次。
下面是我的 quartz_data.xml
文件,其中包含我的所有作业。截至目前,我只显示两个职位,但它将有大约 10-15 个职位。
<?xml version="1.0" encoding="UTF-8"?>
<job-scheduling-data
xmlns="http://www.quartz-scheduler.org/xml/JobSchedulingData"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.quartz-scheduler.org/xml/JobSchedulingData http://www.quartz-scheduler.org/xml/job_scheduling_data_2_0.xsd"
version="1.8">
<schedule>
<job>
<name>TestJobA</name>
<job-class>com.sample.controller.TestJobA</job-class>
</job>
<trigger>
<cron>
<name>TestJobA</name>
<job-name>TestJobA</job-name>
<cron-expression>0 0/1 * 1/1 * ? *</cron-expression>
</cron>
</trigger>
</schedule>
<schedule>
<job>
<name>TestJobB</name>
<job-class>com.sample.controller.TestJobB</job-class>
</job>
<trigger>
<cron>
<name>TestJobB</name>
<job-name>TestJobB</job-name>
<cron-expression>0 0/5 * 1/1 * ? *</cron-expression>
</cron>
</trigger>
</schedule>
</job-scheduling-data>
下面是我现在正在使用的 quartz.properties
文件 -
------------------------- Threads --------------------------- #
# How many jobs can run at the same time?
org.quartz.threadPool.threadCount=10
# ----------------------------- Plugins --------------------------- #
# Class to load the configuration data for each job and trigger.
# In this example, the data is in an XML file.
org.quartz.plugin.jobInitializer.class=org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin
org.quartz.plugin.jobInitializer.fileNames = quartz_data.xml
org.quartz.plugin.jobInitializer.failOnFileNotFound = true
org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore
我的问题是 - 我是否应该在我的 quartz.properties 文件中使用任何其他属性,以便从quartz框架的角度获得更好的性能。我是第一次使用它,所以只是想确定我的 quartz 是否应该使用更好的属性。
最佳答案
有关最佳实践,您可以查看 quartz.org/Best Practices关于quartz.properties 有另一个链接 quartz.org/Main Scheduler
性能与您的环境和可用资源直接相关,我建议查看此文档并选择更适合您的应用程序的配置。
关于java - 如何在Web应用程序中高效地使用quartz框架?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28447092/