官方对Spring Cloud Task的解释如下
Spring Cloud Task allows a user to develop and run short lived microservices using Spring Cloud and run them locally, in the cloud, even on Spring Cloud Data Flow. Just add @EnableTask and run your app as a Spring Boot app (single application context).
看了好久,没看懂是干啥的,求解释
这玩意主要是来解决所谓的
short lived microservices
的问题。因为一般的应用服务都是长时间运转的不停止的,但是有很多服务并不需要这样,比如:定时的服务,比如每天夜里跑一次的,跑完就可以停了
临时的服务,比如领导需要看个数据,于是码农要做个数据分析,处理完事就停了
占资源多的业务,本来一个JVM就占了不少内存,有的服务还启了n多线程n多数据连接,不需要的时候就不用启动节省资源
但是这类服务怎么去管理他的生老病死呢,什么时候启动,什么时候关闭,抛异常咋办,还有启动关闭时的hook等等,这些就是spring cloud task要干的事情了。
另外一个重点是往往任务是串并联的,一个业务会牵扯到多个任务,任务之间是通过事件触发的,这就是spring cloud stream要干的事了