<bean id="notifySpringScheduledExecutorFactoryBean" class="org.springframework.scheduling.concurrent.ScheduledExecutorFactoryBean"> <property name="scheduledExecutorTasks">
-
<list>
-
<ref bean="notifySpringScheduledExecutorTask" />
-
</list>
-
</property>
-
</bean>
-
-
<bean id="notifySpringScheduledExecutorTask" class="org.springframework.scheduling.concurrent.ScheduledExecutorTask">
-
<property name="runnable" ref="notifyScheduledMainExecutor" />
-
-
<property name="delay" value="60000" />
-
-
<property name="period" value="120000" />
-
-
-
<property name="fixedRate" value="true" />
-
</bean>
-
-
<bean id="notifyScheduledMainExecutor" class="com.alisoft.aep.notify.schedual.NotifyScheduledMainExecutor">
-
-
<property name="notifyServerService" ref="notifyServerService" />
-
-
<property name="notifyIdCacheStrategy" ref="defaultNotifyIdCacheStrategy" />
-
-
-
-
-
-
-
-
-
-
<property name="notifyTaskExecutor" ref="notifyTaskExecutor" />
-
-
<property name="maxNum" value="1000" />
-
<property name="notifyDao" ref="notifyDao" />
-
</bean>
-
-
-
<bean id="notifyTaskExecutor" class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">
-
-
<property name="corePoolSize" value="10" />
-
-
<property name="maxPoolSize" value="50" />
-
-
<property name="queueCapacity" value="1000" />
-
-
<property name="keepAliveSeconds" value="300" />
-
-
<property name="rejectedExecutionHandler">
-
-
-
-
-
<bean class="java.util.concurrent.ThreadPoolExecutor$CallerRunsPolicy" />
-
</property>
-
</bean>
-
<bean id="notifyServerService" class="com.alisoft.aep.notify.service.impl.NotifyServerServiceImpl">
-
-
<property name="notifyRetryStrategy" ref="defaultNotifyRetryStrategy" />
-
-
-
-
-
<property name="notifyIdCacheStrategy" ref="defaultNotifyIdCacheStrategy" />
-
-
<property name="transactionTemplate" ref="transactionTemplate" />
-
<property name="notifyDao" ref="notifyDao" />
-
</bean>
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/sfdev/archive/2009/04/08/4056114.aspx
分享到:
相关推荐
在构建一个基于Spring的简单高效通用异步任务处理系统时,我们的主要目标是实现轻量级、简单、高效、通用、高扩展性和高可靠性的解决方案。在这个系统中,我们将利用Spring框架的功能,如Job调度和线程池封装,以及...
这个注解来自`org.springframework.scheduling.annotation`包,它会将该方法委托给Spring的异步任务执行器来处理。执行器通常是基于Java的`ExecutorService`,Spring提供了多种配置选项来创建和管理执行器。 要启用...
在现代应用中,高效地处理并发任务是至关重要的,Spring为此提供了异步任务处理的功能,可以显著提升系统的响应速度和性能。本文将深入探讨在Spring中如何利用多线程和动态任务来实现异步处理,并分享一些实践心得。...
在使用`@Async`之前,需要配置一个`TaskExecutor`,这是Spring用于执行异步任务的接口。Spring MVC默认提供了一个简单的`SimpleAsyncTaskExecutor`,但通常我们会选择更高效的实现,如`ThreadPoolTaskExecutor`。 ...
`spring-context-support.jar`是Spring框架对Quartz和Commons JCR等第三方调度库的支持,同时也包含Spring自己的`TaskExecutor`和`TaskScheduler`接口,用于实现异步任务和定时任务。 1. **Spring TaskExecutor**: ...
一、Spring异步线程池类图 Spring提供了一系列的`TaskExecutor`实现,它们根据不同的需求和场景有不同的特性和行为。这些实现包括但不限于: 1. `SimpleAsyncTaskExecutor`:每次请求都会启动新的线程,不进行线程...
为了启用异步处理,需要配置`AsyncConfigurer`接口或者`<task:annotation-driven/>`元素,并提供一个`Executor` bean来处理异步任务。 ### 3. Spring MVC 异步处理 在Spring MVC中,我们可以通过`@Async`注解实现...
在Spring Boot框架中,异步任务处理是一种常见需求,它能提高应用的性能和响应速度。Spring Boot提供了简单易用的API和注解来支持异步任务的实现,特别是通过`@Async`注解和定时任务`@Scheduled`。下面我们将深入...
需要注意的是,异步方法必须在一个启用了`@EnableAsync`的配置类中使用,Spring会自动配置一个任务执行器来处理这些异步任务。 Spring的定时任务和异步方法是提高系统效率和实现复杂业务逻辑的重要工具。通过合理...
`AsyncConfigurer`是Spring提供的接口,用于自定义异步任务的配置,包括`TaskExecutor`的选择和设置。`TaskExecutor`是Spring的核心组件,负责线程池的管理,用于执行异步任务。 ```java @Configuration @...
- **基本概念**:Spring Task是Spring框架的一部分,提供了基本的定时任务调度功能,包括`@Scheduled`注解用于标记定时任务,以及`TaskScheduler`和`ThreadPoolTaskScheduler`接口用于异步执行任务。 - **@...
Spring提供`@Async`注解来支持异步任务执行,可以将定时任务与主线程分离,避免阻塞。同时,通过`@Scheduled`注解的`concurrent`属性,可以控制多个实例是否并发执行。 8. **监听任务状态** Spring还提供了`...
3.使用Spring的异步任务(AsyncTask): 使用@Async注解可以将普通的方法异步执行,使其成为一个异步任务。可以在方法上添加@Async注解并配合@EnableAsync注解将其激活。 4.使用第三方库,如Quartz: 除了使用Spring...
1. **ThreadPoolTaskExecutor**:这是一个线程池任务执行器,它允许我们异步执行任务,适用于大量并发的任务执行。 2. **ScheduledTaskRegistrar**:这是一个注册器,用来注册定时任务。 3. **...
TaskExecutor接口是Spring提供的一个异步任务执行接口,它并不直接支持定时任务,但可以通过配合ScheduledExecutorService或者ThreadPoolTaskScheduler来实现定时任务。ScheduledExecutorService是Java的并发库提供...
`TaskExecutor`接口提供了一个简单的API来执行异步任务。你可以使用`ThreadPoolTaskExecutor`或`SimpleAsyncTaskExecutor`等实现类来配置线程池或者简单地为每个任务创建新线程。配置`TaskExecutor`时,可以调整...
因此,我们可以通过配置自定义的`TaskExecutor`来调整异步任务的执行策略,例如使用线程池: ```java @Configuration @EnableAsync public class AppConfig implements AsyncConfigurer { @Override public ...
1. SpringBoot 自定义线程池以及多线程间的异步调用(@Async、@EnableAsync) 2.Java多线程之定时任务 以及 SpringBoot多线程实现定时任务 3.@EnableScheduling 与 @Scheduled