Ver código fonte

add 规则引擎集群

18339543638 4 anos atrás
pai
commit
edb0ece58f

+ 3 - 1
jetlinks-components/rule-engine-component/src/main/java/org/jetlinks/community/rule/engine/cluster/ClusterUniqueTask.java

@@ -194,6 +194,7 @@ class ClusterUniqueTask implements Task ,Serializable{
                             this.workerId=this.getCurrentSeverId();
                         }else {
                             this.workerId=null;
+                            generatePingMsgDisposable.dispose();
                         }
                     } catch (InterruptedException e) {
                     }
@@ -266,7 +267,8 @@ class ClusterUniqueTask implements Task ,Serializable{
 
     private Mono<Void> operation(OperationMessage message) {
         TaskOperation operation=message.operation;
-        if(isReplica()){
+        if(isReplica()&&
+            (generatePingMsgDisposable!=null&&!generatePingMsgDisposable.isDisposed())){
             //当前为任务副本,传递给任务执行者
             return  clusterManager.getTopic(operationTopic)
                 .publish(Mono.just(message))