Pregunta
¿Cuál es la mejor manera de ejecutar un proceso en el planificador. Me Puede hacerlo crontab o Primavera-lotes. Cualquier otra opción mejor?
Solución
El cuarzo es una fuente completamente equipado, abierto sistema de planificación de tareas que pueden ser integrado con, o se utiliza a lo largo de lado prácticamente cualquier aplicación J2EE o J2SE - desde la aplicación más pequeña independiente a la más grande de comercio electrónico sistema. El cuarzo puede ser utilizado para crear horarios simples o complejos para la ejecución de decenas, cientos, o incluso decenas de miles de puestos de trabajo; cuyos trabajos tareas se definen como estándar de Java componentes o EJB. el cuarzo Programador incluye muchos funciones de clase empresarial, tales como JTA transacciones y agrupamiento.
Otros consejos
También puede mirar en cuarzo si desea programar tareas en una máquina virtual.
Si usted quiere hacer algo periódicamente como un proceso separado, me gustaría ir a crontab.
Lo que crontab es razonable. Es programa madura utilizada con fines comerciales también.
Otro sheduler con la creación de tareas GUI es MAESTRO. También podría generar algunos archivos de configuración para la automatización.
Primavera + cuarzo es mucho más fácil de configurar y luego Spring Batch. Pero depende de su aplicación.
http://static.springsource.org/spring /docs/2.5.x/reference/scheduling.html
Uso de la primavera + cuarzo se puede definir una MethodInvokingJobDetailFactoryBean que los horarios de llamada a un método en un bean (que existe en su contexto de aplicación).
En este ejemplo orderService.cancelNotPaidOrders () será llamada cada 30 minutos:
<bean id="cancelExpiredOrders" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetBeanName" value="orderService"/>
<property name="targetMethod" value="cancelNotPaidOrders"/>
<property name="concurrent" value="false" />
</bean>
<bean id="simpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail" ref="cancelExpiredOrders" />
<property name="startDelay" value="10000" />
<property name="repeatInterval" value="1800000" />
</bean>
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="simpleTrigger" />
</list>
</property>
</bean>
Trate TimeMachine Programador
https://bitbucket.org/saltnlight5/timemachine-scheduler/wiki/Home