关于elastic-job 分片与线程问题
1.分片与线程:单分片就是单线程;多分片,有几个分片就几个线程,这样的设计比较易懂
2.线程池:Elastic job 为每一个作业分配了一个线程池
3.幂等性:elasticjob数据要自己分片,如果多个分片执行同一个任务要注意幂等性。比如取中间表数据处理,配置了分配总量为2个,但是具体取数据时并没有使用分片(根据单号取模每个分片执行部分数据),导致两个分片(两个线程)取到了相同的数据,重复执行了,无法保证幂等性
4.作业服务器:job与业务代码分开部署,业务服务器部署2台,job服务器1台,总分片4个,谁分这个四个分片,答案:job服务器,相当于一个服务起四个线程执行任务
5.线程与任务:2个job服务器,4个分片,2个任务,总共几个线程去执行?4个or8个线程?根据上面1与2的结论应该,8个线程,分属两个线程池。待确认,线程由分片决定吧,还是任务量?
6.关于官网-弹性调度-高可用,这段话理解
将分片总数设置为 1,并使用多于 1 台的服务器执行作业,作业将会以 1 主 n 从的方式执行。 一旦执行作业的服务器宕机,等待执行的服务器将会在下次作业启动时替补执行。开启失效转移功能效果更好,可以保证在本次作业在执行时宕机的情况下,备机立即启动替补执行。
1个分片2个服务器,只有主服务执行任务吗,从服务器空闲。
7.失效转移
ElasticJob 不会在本次执行过程中进行重新分片,而是等待下次调度之前才开启重新分片流程。 当作业执行过程中服务器宕机,失效转移允许将该次未完成的任务在另一作业节点上补偿执行。
理解:服务器宕机,任务未执行完,其他服务器会获取失效数据分片,帮忙执行
8.错过任务重执行
ElasticJob 不允许作业在同一时间内叠加执行(幂等性)。 当作业的执行时长超过其运行间隔,错过任务重执行能够保证作业在完成上次的任务后继续执行逾期的作业。
理解:任务执行时间过长,导致覆盖了下一个节点的执行,开启后,当任务执行完,立刻会执行刚才错过的那个点的任务。
7,8适用场景是,任务执行周期比较长的时候。
官网地址 https://shardingsphere.apache.org/elasticjob/current/cn/features/misfire/
关于elastic-job 分片与线程问题相关推荐
- Elastic Job从单点到高可用、同城主备、同城双活
以下文章来源方志朋的博客,回复"666"获面试宝典 来源:https://jaskey.github.io/blog/2020/05/25/elastic-job-timmer-a ...
- Java-断点续传(分片上传)
什么是断点续传 用户上传大文件,网络差点的需要历时数小时,万一线路中断,不具备断点续传的服务器就只能从头重传,而断点续传就是,允许用户从上传断线的地方继续传送,这样大大减少了用户的烦恼. 解决上传大文 ...
- Elastic Job 同城主备、同城双活,高可用必备
在使用Elastic Job Lite做定时任务的时候,我发现很多开发的团队都是直接部署单点,这对于一些离线的非核心业务(如对账.监控等)或许无关紧要,但对于一些高可用补偿.核心数据定时修改(如金融场 ...
- Elastic Job 从单点到高可用、同城主备、同城双活
点击上方蓝色"石杉的架构笔记",选择"设为星标"回复"PDF"获取独家整理的学习资料! 长按扫描上方一元购买 前言 在使用Elastic J ...
- ElasticSearch 小记
提示:涉及性能的时候,批量的大小很关键.如果你的批量太大,他们会占用过多的内存,如果他们太小,网络开销又会很大.最佳的平衡点,取决于文档的大小- 如果文档很大,每个批量中就少放几篇里 . 如果文档很小 ...
- 深入浅出分布式存储的设计与优化之道
随着信息化程度的不断提高,全球数据日益膨胀.面对当前PB级的海量数据存储需求,传统的存储系统在容量和性能的扩展上存在瓶颈.云存储以其扩展性强.性价比高.容错性好等优势得到了业界的广泛认同.由于其前瞻性 ...
- libcurl使用多线程下载大文件源码示例!
使用libcurl多线程下载大文件的基本思想: 首选打开文件,将文件等分为指定的片段,使用http range下载,一个线程下载一个片段,当线程下载片段时,它们将数据写到打开文件的指定位置,类似BT文 ...
- 开源任务调度平台elastic-job-lite源码解析
前段时间写过一遍文章<一文揭秘定时任务调度框架quartz>,有读者建议我再讲讲elastic-job这个任务调度框架,年末没有那么忙,就来学习一下elastic-job. 首先一点,el ...
- Elasticsearch系列「零」架构解析与最佳实践
推荐阅读文章: elastic.guide. 分片内部原理 Quintessence Anx. Elasticsearch Performance Tuning 进击的辣条. Elasticsearc ...
- webflux系列--基础
文章目录 Spring Mvc 和 Spring WebFlux WebFlux 的优势&提升性能 WebFlux 应用场景 异同点 响应式编程 Reactive Streams 顶级接口 R ...
最新文章
- 车道检测--VPGNet: Vanishing Point Guided Network for Lane and Road Marking Detection and Recognition
- java使用动态代理来实现AOP(日志记录)的实例代码
- parasoft Jtest 使用教程:功能配置之查找错误
- .Net Core下使用KeyDB高可用缓存集群
- 基于无线通信技术的智能公交系统设计
- 【机器学习】熵、决策树、随机森林 总结
- oracle 查询表空间路径
- django模型的元数据Meta
- weblogic设置classpath、debug端口和log目录
- 《机器视觉算法与应用》第3章 机器视觉算法之图像分割——学习笔记
- 2019-12-19
- 常见软件架构风格介绍
- Win10注册表损坏的修复方法
- QT中的explicit关键字的意思
- LearnGL - 03 - DrawQuad - VBO/EBO - 理解 CW, CCW 的正背面
- 微信PC端测试版更新:新增视频号直播工具
- 绕过BIOS/UEFI固件写保护写入SPI闪存
- C#基础(10)——飞行棋游戏
- 大数据处理——Java
- ACM程序设计大赛概况