• elastic job 发布版本后突然不执行问题解决


    背景:

      1. <elastic.version>2.1.5</elastic.version>
      2. 分为本地,fat,uat,prd环境,本地和fat用的一个zk , uat,prd分别有各自的zk
      3. fat uat prd 三个环境都是2个服务器,集群部署
      4. 数据量比较少,因此,未配置分片,导致定时任务只会在一个服务器上面运行(此点需要研究是否允许轮询服务器执行)
    

    描述:

      dev uat prd 一切正常
      fat 有异常,刚开始运行正常,后来fat发布版本后,任务不再执行。
    

    检查过程:

      1. 检查zk,服务正常。
      2. 检查elastic job分片等配置,配置正常。
      3. fat启动单个服务器,定时任务仍然不执行。
      4. 后来突然想到,dev和fat用的同一个zk,分布式调度会根据zk节点来,会不会这里导致的问题?
    

    验证过程:

      elastic job 看文档 https://shardingsphere.apache.org/elasticjob/current/cn/overview/
      从apache官网下载ui包  
      https://www.apache.org/dyn/closer.cgi/shardingsphere/elasticjob-ui-3.0.0-beta/apache-shardingsphere-elasticjob-3.0.0-beta-lite-ui-bin.tar.gz
      解压启动访问查看,发现 有多个instance 在此zk上面,全部处于执行状态,说明,定时任务已经在其他服务器运行,因此,fat发版新启动的服务不会执行。
    

    出现原因:

      部门在研究新的容器部署,因此有新的fat环境在运行(命名为容器fat环境),导致fat环境的集群有多套,zk选择的是容器fat环境进行定时任务的执行。
    

    解决方案:

      暂时解决方案:在UI上面,设置disable其余所有的instance,然后等到配置的时间间隔后,fat正常执行定时任务。
  • 相关阅读:
    Netty指定分隔的字符
    Netty解决TCP粘包/拆包问题
    TCP粘包/拆包问题
    Netty5-应答服务器
    线程池中的线程的排序问题
    Java NIO 概述
    在windows中,如何使用cmd命令行窗口正确显示编码为utf-8格式的文字
    OXM
    Mysql event时间触发器,实现定时修改某些符合某一条件的某一字段
    linux 环境 tomcat 莫名奇妙挂掉
  • 原文地址:https://www.cnblogs.com/cuiyf/p/14081423.html
Copyright © 2020-2023  润新知