有点奇怪的要求:
我有一些作为数据收集器的石英工作,在可用时从不同位置收集数据。然后我有另一个工作 [数据加载] 正在从收集器作业中调用/触发以更新我的数据库。
我的要求是如何限制 Load Job 以使只有两个实例并行运行并处理来自收集器作业的工作
收集器作业 1,2,...N > 加载器作业(两个实例)
作业程序部署在集群 Tomcat 中。
两个问题: 1)当 Loader 作业的两个实例已经在处理中时,如何让 Collector 作业等待?有什么方法可以使用石英程序来实现 FIFO 逻辑来限制 Loader 作业的工作?如果一个数据已经在等待处理,我也不希望收集器获取另一个数据。2)有没有办法只用两个线程运行作业?一次不能超过两个实例处于活动状态?我对我的数据库表有限制,只能并行运行两个实例。