首页 > 其他分享 >Apache DolphinScheduler实战(07)-缓存机制

Apache DolphinScheduler实战(07)-缓存机制

时间:2023-11-12 17:35:20浏览次数:36  
标签:缓存 07 spring DolphinScheduler caffeine server cache master Apache

1 缓存目的

由于M/S调度过程中,会产生大量数据库读操作,如tenant,user,processDefinition等:

  • 对DB产生很大读压力
  • 使整个核心调度流程变慢

考虑这部分业务数据读多写少,引入缓存模块:减少DB读压力,加快核心调度流程。

2 缓存设置

spring:
  cache:
    # default enable cache, you can disable by `type: none`
    type: none
    cache-names:
      - tenant
      - user
      - processDefinition
      - processTaskRelation
      - taskDefinition
    caffeine:
      spec: maximumSize=100,expireAfterWrite=300s,recordStats

缓存模块采用spring-cache机制,可直接在spring配置文件中配置是否开启缓存(默认none关闭), 缓存类型;

采用caffeine缓存管理,可自由设置缓存相关配置,如缓存大小、过期时间等;

3 缓存读取

缓存采用spring-cache的注解,配置在相关mapper层,可参考如:TenantMapper.

4 缓存更新

业务数据的更新来自于api-server, 而缓存端在master-server, 故需要对api-server的数据更新做监听(aspect切面拦截@CacheEvict),当需要进行缓存驱逐时会通知master-server,master-server接收到cacheEvictCommand后进行缓存驱逐;

缓存更新的兜底策略来自于用户在caffeine中的过期策略配置,结合业务配置。

5 时序图

cache-evict

参考: 编程严选网

标签:缓存,07,spring,DolphinScheduler,caffeine,server,cache,master,Apache
From: https://blog.51cto.com/JavaEdge/8330128

相关文章

  • P1077-DP【黄】
    昨天好几道题没做出来很郁闷,结果今天上来半小时不到就直接做出一道黄DP题了,不错,又有写题的冲动了。这道题我一直被那个“因为方案数可能很多,请输出方案数对1000007取模的结果。”这句话吓到了,因为我在想如果涉及求最优方案,那么势必会有比较,那么既然取了摸还怎么比较啊?不会另要开......
  • [题解] CF407E k-d-sequence
    k-d-sequence给你一个长为\(n\)的序列,求最长的子区间使得它加入至多\(k\)个数后,重排后是公差为\(d\)的等差数列。\(n,k\le2\times10^5\),\(0\led\le10^9\)。公差是\(d\)的等差数列模\(p\)的值应该相等,所以把序列按极长模\(p\)同余的连续段分组。对于同......
  • 云原生架构实战07 Kubernetes的核心实战 下
    7、存储抽象pod如果挂掉,在其他的机器启动新pod,原来pod的数据是无法迁移到新机器的;所以使用单独的存储层来解决。将节点上的文件或目录挂载到pod上,此时该目录会变成持久化存储目录,即使Pod被删除后重启,也可以重新加载到该目录,该目录下的文件不会丢失。nfs卷能将NFS(网络文件系统)挂载......
  • P1507 NASA的食物计划
    还是选与不选的问题并且只能选一次,所以是01背包,但是这个题目是个二维的01背包,因为它必须要满足两个条件,这个是满足体积的情况下,一个是满足质量的情况下#include<bits/stdc++.h>usingnamespacestd;constintN=500;intf[N][N];inta[N],b[N],w[N];intmain(){ intn,m;......
  • windows操作系统中如何将apache zookeeper安装为系统服务
    记录一下,网上有些资料是错的,prunsrv的参数要以--开头!一下载最新版的apachecommonsdaemonhttp://archive.apache.org/dist/commons/daemon/binaries/windows/commons-daemon-1.3.4-bin-windows.zip解压,复制两个exe文件到zk的bin目录下二编写服务停止脚本(启动脚本不用自己......
  • train_logReg_param.o:train_logReg_param.cc:(.text+0x3407): more undefined refere
     001、make编译报错:train_logReg_param.o:train_logReg_param.cc:(.text+0x3407):moreundefinedreferencesto`std::__throw_out_of_range_fmt(charconst*,...)'follow 002、解决方法(可能是gcc版本的问题)a、gcc当前版本:(py38)[[email protected]]#gcc......
  • Apache Celeborn
    ApacheCeleborn的背景ApacheCeleborn——快ApacheCeleborn——稳ApacheCeleborn——弹Evaluation一、背景大数据引擎的中间数据有两个来源:Shuffle和Spill,其中最重要的是Shuffle,据统计有超过15%的资源消耗在Shuffle。1.1传统Shuffle的问题下图右侧结构图是传统......
  • 平安人寿基于 Apache Doris 统一 OLAP 技术栈实践
    导读:平安人寿作为保险行业领军企业,坚持技术创新,以数据业务双轮驱动的理念和更加开放的思路来应对不断增长的数据分析和应用需求;以深挖数据价值、保障业务用数效率为目标持续升级大数据产品体系。自2022年起平安人寿开始引入开源实时数据仓库ApacheDoris并基于此统一OLAP技术......
  • 牛客[编程题] HJ107 求解立方根
    HJ107求解立方根中等  通过率:27.15%  时间限制:1秒  空间限制:32M 描述计算一个浮点数的立方根,不使用库函数。保留一位小数。数据范围:|val|\le20\∣val∣≤20 输入描述:待求解参数,为double类型(一个实数)输出描述:输出参数的立方根。保留一位小数......
  • apache httpd文件服务器(三)
    创建file文件夹,生成txt测试文件[root@VM-0-5-centoshtml]#echo"abc333">file/b.txt[root@VM-0-5-centoshtml]#lsfile/a.txtb.txt创建exe文件[root@VM-0-5-centoshtml]#touchfile/a.exe[root@VM-0-5-centoshtml]#lsfile/a.exea.txtb.txt查看log访问记录vi/......