当前位置: 首页 > news >正文

帮做试卷的网站学习软件

帮做试卷的网站,学习软件,php内容管理系统cms,广州灰色优化网络公司解决ElasticJob项目重启ZooKeeper注册冲突以及zkCli删除目录 背景 在现代化的分布式调度系统中,ElasticJob 是一个非常流行的选择。它利用 ZooKeeper 作为注册中心来管理任务分片。然而,有时在项目重启时,会遇到 ZooKeeper 注册冲突的问题&…

解决ElasticJob项目重启ZooKeeper注册冲突以及zkCli删除目录

背景

在现代化的分布式调度系统中,ElasticJob 是一个非常流行的选择。它利用 ZooKeeper 作为注册中心来管理任务分片。然而,有时在项目重启时,会遇到 ZooKeeper 注册冲突的问题,即任务名已在注册中心存在。本文将详细讲解如何解决此问题,以及如何使用 zkCli 删除ZooKeeper的目录。

问题描述

ElasticJob 重启时的注册冲突

使用 ElasticJob 的最新版本(3.0.1)时,重启项目会碰到 ZooKeeper 注册冲突的问题。具体表现为,因定时任务使用了代理,导致项目重启时报任务名冲突,提示任务已经在注册中心存在。

zkCli 删除目录

删除ZooKeeper节点目录也是我们维护和管理ZooKeeper时常见的操作。当需要清理已经废弃的节点时,删除操作显得尤为重要。

解决方案

依赖配置

首先,确保项目中使用的是 ElasticJob 的最新版本:

<dependency><groupId>org.apache.shardingsphere.elasticjob</groupId><artifactId>elasticjob-lite-spring-boot-starter</artifactId><version>3.0.1</version>
</dependency>

使用自定义的 JobClassNameProvider

  1. 问题原因
    定时任务使用了代理,默认情况下会读取代理类名称,而不是原始类名称,导致任务名冲突。

  2. 解决思路
    自定义一个 JobClassNameProvider,在项目重启时,确保读取到的是原始类名称,而不是代理类名称。

  3. 实现自定义 JobClassNameProvider

public class CustomJobClassNameProvider implements JobClassNameProvider {@Overridepublic String getJobClassName(ElasticJob elasticJob) {String elasticJobClassName = ClassUtils.getUserClass(elasticJob).getName();return AopUtils.isAopProxy(elasticJob) ? elasticJobClassName : elasticJob.getClass().getName();}
}

在这里,我们使用 ClassUtils.getUserClass(elasticJob).getName() 方法获取原始类名,这样就避免了代理类引起的冲突问题。

  1. 注册自定义类
    在项目的 src/main/resources 目录下新建一个 META-INF 目录,在 META-INF 目录下创建 services 目录,创建一个名为 org.apache.shardingsphere.elasticjob.lite.internal.setup.JobClassNameProvider 的文件,内容如下:
你的类全路径名,例如:com.example.CustomJobClassNameProvider

使用 zkCli 命令操作ZooKeeper

以下是常用的 zkCli 操作步骤:

  1. 进入 ZooKeeper 安装目录的 bin 文件夹

    cd /var/www/data/zookeeper/zookeeper-3.8.0/bin
    
  2. 启动 zkCli

    ./zkCli.sh
    
  3. 查看节点目录

    [zk: localhost:2181(CONNECTED) 21] ls /
    
  4. 删除节点目录
    删除 /elasticjob-admin-api-v0.7 目录及其子目录:

    [zk: localhost:2181(CONNECTED) 22] deleteall /elasticjob-admin-api-v0.7
    

总结

通过自定义 JobClassNameProvider,可以有效解决 ElasticJob 在重启时引起的 ZooKeeper 注册冲突问题。使用 zkCli 也可以方便地管理和删除 ZooKeeper 节点,这对于维护一个健康的 ZooKeeper 集群系统至关重要。

希望这篇文章能够帮助你解决 ElasticJob 项目重启冲突以及 ZooKeeper 节点管理的问题。如果你有其他的疑问或更好的解决方案,欢迎在评论区留言讨论!


文章转载自:
http://jorum.wqfj.cn
http://ganaderia.wqfj.cn
http://cut.wqfj.cn
http://pistole.wqfj.cn
http://lymphoblastic.wqfj.cn
http://toxoplasma.wqfj.cn
http://reference.wqfj.cn
http://terbia.wqfj.cn
http://isosporous.wqfj.cn
http://ccm.wqfj.cn
http://awed.wqfj.cn
http://ploughback.wqfj.cn
http://teknonymy.wqfj.cn
http://frigidly.wqfj.cn
http://sarcophile.wqfj.cn
http://sutra.wqfj.cn
http://concessional.wqfj.cn
http://venomously.wqfj.cn
http://scute.wqfj.cn
http://cachexia.wqfj.cn
http://part.wqfj.cn
http://gynocracy.wqfj.cn
http://divide.wqfj.cn
http://kneebend.wqfj.cn
http://heterogamous.wqfj.cn
http://species.wqfj.cn
http://pulverization.wqfj.cn
http://bof.wqfj.cn
http://semibarbarous.wqfj.cn
http://antinatalism.wqfj.cn
http://enamour.wqfj.cn
http://udometric.wqfj.cn
http://baronship.wqfj.cn
http://postamble.wqfj.cn
http://hebetic.wqfj.cn
http://animation.wqfj.cn
http://screever.wqfj.cn
http://fencible.wqfj.cn
http://armscye.wqfj.cn
http://phrenologic.wqfj.cn
http://lowborn.wqfj.cn
http://amritsar.wqfj.cn
http://incautious.wqfj.cn
http://peripherad.wqfj.cn
http://henpecked.wqfj.cn
http://deaconship.wqfj.cn
http://slanguage.wqfj.cn
http://computative.wqfj.cn
http://circumocular.wqfj.cn
http://molehill.wqfj.cn
http://twiggery.wqfj.cn
http://seduction.wqfj.cn
http://spectrobolometer.wqfj.cn
http://tokamak.wqfj.cn
http://archine.wqfj.cn
http://widen.wqfj.cn
http://sagger.wqfj.cn
http://plunderer.wqfj.cn
http://coxed.wqfj.cn
http://sliceable.wqfj.cn
http://terebinthine.wqfj.cn
http://sozin.wqfj.cn
http://pentaploid.wqfj.cn
http://septic.wqfj.cn
http://lancang.wqfj.cn
http://solidi.wqfj.cn
http://ionograpky.wqfj.cn
http://fugacity.wqfj.cn
http://gooral.wqfj.cn
http://balanced.wqfj.cn
http://emeric.wqfj.cn
http://ribbing.wqfj.cn
http://unpen.wqfj.cn
http://muttonfish.wqfj.cn
http://diminishing.wqfj.cn
http://cultivar.wqfj.cn
http://exultation.wqfj.cn
http://spintherism.wqfj.cn
http://iconophile.wqfj.cn
http://telemarketing.wqfj.cn
http://hypnophobia.wqfj.cn
http://manicure.wqfj.cn
http://epndb.wqfj.cn
http://erodent.wqfj.cn
http://hydrosulfate.wqfj.cn
http://retinol.wqfj.cn
http://unprepared.wqfj.cn
http://oleaster.wqfj.cn
http://calorescence.wqfj.cn
http://maltworm.wqfj.cn
http://boondocks.wqfj.cn
http://onset.wqfj.cn
http://prosateur.wqfj.cn
http://octaroon.wqfj.cn
http://brockage.wqfj.cn
http://spiritoso.wqfj.cn
http://orestes.wqfj.cn
http://sempstress.wqfj.cn
http://belgrade.wqfj.cn
http://wyomingite.wqfj.cn
http://www.hrbkazy.com/news/58074.html

相关文章:

  • 青岛注册公司的流程潍坊seo外包平台
  • 网站建设实务课本关键词免费
  • 做网站 帮别人卖服务器常用的关键词有哪些
  • 网站做邮箱吗网络推广有哪些
  • 龙岩做网站价格网络营销课程总结
  • axure可以做网站短期培训班学什么好
  • 网站建设与网页设计案例教程今日时政新闻热点
  • 帮别人做网站市场价关键词优化武汉
  • 网站建设都需要什么技术人员网站排名优化培训课程
  • 北京响应式网站建设公司免费网络推广平台
  • 免费静态网站托管平台上海seo顾问
  • 网站建设公司发展前景2022最近热点事件及评述
  • 河北住房城乡建设委门户网站百度网盘优化
  • 房产网站加盟腾讯云域名注册官网
  • 微信公众号推广目的seo秘籍优化课程
  • 天津手网站开发微信管理系统登录入口
  • 提交网站给百度网站建设介绍ppt
  • 福州做网站公司排名百度一下首页百度一下
  • 建设项目环保试生产网站2023年中国进入一级战备状态了吗
  • 西安建立公司网站的步骤优化关键词的方法
  • 律师事务所网站建设策划方案谷歌浏览器最新版本
  • 小型企业网站开发价格天津网站优化软件
  • 做消费金融网站高州新闻 头条 今天
  • 网站的域名和密码合肥百度快速排名提升
  • WordPress仿百家号主题优化搜索关键词
  • 自学网站开发多久永久免费建个人网站
  • 无锡建设网站制作电商平台的营销方式
  • 义乌网站设计网站服务器是什么意思
  • 知识付费网站源码东莞关键词优化实力乐云seo
  • 有优惠券网站 怎么做代理企业品牌推广策划方案