मेरे वसंत आवेदन में मैं क्वार्ट्ज के साथ एकीकृत करने के लिए SchedulerFactoryBean
का उपयोग कर रहा हूं। हम टॉमकैट उदाहरणों को क्लस्टर करने जा रहे हैं, और इस प्रकार मैं क्लस्टर्ड क्वार्ट्ज पर्यावरण चाहता हूं, ताकि एक ही नौकरियां अलग-अलग वेब सर्वरों पर एक ही समय में न चलें।क्वार्ट्ज और वसंत - क्लस्टर्ड लेकिन लगातार नहीं?
यह मेरा app-context.xml
इस प्रकार है करने के लिए,:
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="cronTrigger"/>
<ref bean="simpleTrigger" />
</list>
</property>
<property name="dataSource" ref="dataSource"/>
<property name="overwriteExistingJobs" value="true"/>
<!-- found in applicationContext-data.xml -->
<property name="applicationContextSchedulerContextKey" value="applicationContext"/>
<property name="quartzProperties">
<props>
<prop key="org.quartz.scheduler.instanceName">SomeBatchScheduler</prop>
<prop key="org.quartz.scheduler.instanceId">AUTO</prop>
<prop key="org.quartz.jobStore.misfireThreshold">60000</prop>
<!--<prop key="org.quartz.jobStore.class">org.quartz.simpl.RAMJobStore</prop>-->
<prop key="org.quartz.jobStore.class">org.quartz.impl.jdbcjobstore.JobStoreTX</prop>
<prop key="org.quartz.jobStore.driverDelegateClass">org.quartz.impl.jdbcjobstore.StdJDBCDelegate</prop>
<prop key="org.quartz.jobStore.tablePrefix">QRTZ_</prop>
<prop key="org.quartz.jobStore.isClustered">true</prop>
<prop key="org.quartz.threadPool.class">org.quartz.simpl.SimpleThreadPool</prop>
<prop key="org.quartz.threadPool.threadCount">25</prop>
<prop key="org.quartz.threadPool.threadPriority">5</prop>
</props>
</property>
</bean>
सब कुछ अच्छी तरह से काम करता है, सिवाय इसके कि जब मैं एक ट्रिगर हटाने या बदलने के लिए, तो मेरे एप्लिकेशन को पुनः प्रारंभ करने का प्रयास, पुराने चलाता अभी भी कायम कर रहे हैं डीबी, और अभी भी भागो। मुझे यह नहीं चाहिए, मैं बस उन्हें हटाना चाहता हूं जब ऐप बंद हो जाता है (या फिर से शुरू किया जाता है)। मैंने overwriteExistingJobs
संपत्ति का मान सही होने के लिए सेट किया है, क्योंकि मैंने सोचा था कि यह वही है।
कोई विचार? मैं डीबी का उपयोग क्लस्टरिंग के लिए करना चाहता हूं, इससे परे किसी भी प्रकार की दृढ़ता नहीं।
मुझे एक ही समस्या थी और मुझे कोई समाधान नहीं मिला। आखिरकार मैंने वेब ऐप से नौकरी निकाल दी और इसे क्रॉन के माध्यम से चलाने के लिए निर्धारित किया। यह देखने के लिए उत्सुक है कि दूसरों को क्या कहना है। – chedine
टेराकोटा का प्रयोग करें? –