Elastic-Job使用总结

绝地灬酷狼 2022-11-26 11:55 164阅读 0赞

场景一:多个任务,分布式执行,并且需要避免不同节点上重复执行任务

解决方法:

1) 分片数设置为1

2)不同的jobName要设置成唯一的;

3)使用 RotateServerByNameJobShardingStrategy分片策略;

  1. JobCoreConfiguration.Builder builder = JobCoreConfiguration.newBuilder(final String jobName, final String cron, final int shardingTotalCount)

场景二:需要执行某一类任务,比如查询一个数据库表的多个记录,一条记录就是一个任务,需要分散压力到多个节点上

解决方法:

1)分片数设置成集群节点数相同或节点的倍数;

2)jobName每个节点必须设置成相同的值,如果每个节点上的jobName不同,则每个节点都会执行所有的分片,因为ElasticJob是根据JobName来区分任务的,名字相同,会当成同一个任务,然后对该任务进行分片;

3)使用AverageAllocationJobShardingStrategy分片策略;

JobCoreConfiguration.Builder builder = JobCoreConfiguration.newBuilder(final String jobName, final String cron, final int shardingTotalCount)

发表评论

表情:
评论列表 (有 0 条评论,164人围观)

还没有评论,来说两句吧...

相关阅读

    相关 elasticjob详解

    我这篇博文主要是讲如何从源码上玩转一个框架,而不是简单的使用,简单的使用看看别的帖子即可,我这篇主要阐述深度的技术 问题 1 GitHub官方网址          [h

    相关 springboot整合elasticjob

    任务调度来源 考虑下面的几种场景: 每天凌晨1点,需要对系统的订单表数据根据SKU的维度进行汇总并生成报表 每隔半个小时,需要将数据库中的那些超时未支付的订