我是学习 Spring 云任务和 SCDF 的新手,所以问这个。
我想根据一个事件执行我的 SCT(比如将一条消息发布到 Rabbit MQ),所以我认为它可以通过两种方式完成:
创建一个从 RabbitMQ 轮询消息并将数据发送到流的源,现在创建一个从流中读取数据的接收器,一旦数据到达接收器(来自源流),任务就会启动。
create steam producer --definition "rabbitproducer | streamconsumer (This is @TaskEnabled)"
不确定这是否可能?
其他方式可能是使用任务启动器。这里任务启动器将配置一个流,一个监听器将从 rabbitMQ 轮询消息。因此,当收到消息时,触发器将启动该过程,而 tasklauncher 将启动该任务。但是这里不确定我将如何将消息数据放入我的任务中?我是否必须将数据添加到 TaskLaunchRequest 中?
create stream mystream --definition "rabbitmsgtrigger --uri:my task | joblauncher"