待遇任务执行器(dy-task-actuator-simple)文档

简介

  简称 dtas 吧。这是一个尚在起步但无需太多功能的执行器。

  心血来潮,做了一个任务执行器,倒不是一定要重复造轮子,而是没有发现开箱即用的任务执行器。

  ​这不是一个特别高性能的任务调度框架!只是一个任务执行器。唯一的优点就是简单。

  设计时希望 dtas 能够简单调控、限制资源使用、增大资源利用率、实现简易监控。为此采用了多级线程池、阻塞队列、信号量、令牌桶。

  dtas 适用于执行大量的 cpu 密集型、io 密集型、网络请求任务,也可用作并发的异步任务控制。

联系

  我会在每周六下午检查邮箱、留言和 issue

  1. 给我发送邮件: 17625901395@163.com
  2. 在博客园给我留言:https://www.cnblogs.com/dawnings/p/18588469/treatment-task-actuator-dytaskactuatorsimple-document-zka1bj
  3. 在 github 给我 issue:https://github.com/dawnings/dy-task-actuator-simple

支持

  1. 您可在博客园给我打赏。
  2. 作者时间并不充裕,故暂不支持pr,您可在issue中提供支持。

安装

  github 上 main 分支代码就是最新可用的完整代码,如有三方引用会在文档标注。

依赖

  dtas 通过 hutool​ 和 guava​ 减少造轮子。

  所有依赖如下:

artifactId groupId version scope
lombok org.projectlombok 1.18.26 provided
slf4j-api org.slf4j 2.0.16 provided
hutool-all cn.hutool 5.8.34 compile
guava com.google.guava 33.3.1-jre compile
junit junit 4.13.1 test

  项目构建环境如下:

name version
jdk 8
maven 3.6.3

功能清单

builder 构建工具

  • 配置任务名称
  • 通过任务名称获取任务执行器
  • 设定自定义通讯标记
  • 设定启动延迟时间
  • 设定限流器
  • 设定数据采集数量最低门限
  • 设定数据采集数量最高门限(任务队列极限)
  • 设定数据采集间隔最低门限
  • 设定数据采集间隔最高门限
  • 设定并发线程最高数量
  • 设定数据采集执行接口
  • 设定任务消费执行接口
  • 设定任务执行回调接口
  • 设定消费速率监控接口
  • 设定消费速率 X 轴生成器
  • 设定消费速率 X 轴生成通知接口
  • 设定限流器验证接口

执行器

  • 添加任务到等待队列
  • 添加任务到等待队列(阻塞)
  • 添加任务到执行队列
  • 终止执行器
  • 暂定执行器
  • 恢复执行器
  • 调整最大并发线程
  • 获取消费速率表
  • 获取运行状态参数

预实现接口

消费速率 X 轴生成器
  • 每 5s 生成
  • 每 1 分钟生成
  • 每 5 分钟生成
  • 10 分钟生成
限流验证器
  • 默认通过验证器

工具

  • 可动态限制大小的 LinkedHashMap
  • 可动态调控数量的信号量

集成

  • springboot-starter集成

待遇任务执行器(dy-task-actuator-simple)文档的更多相关文章

  1. 在线API文档管理工具Simple doc

    Simple doc是一个简易的文档发布管理工具,为什么要写Simple doc呢?主要原因还是github的wiki并不好用:没有目录结构,文章没有Hx标签索引,最悲剧的是文章编辑的时候不能直接图片 ...

  2. Spring Boot属性文件配置文档(全部)

    This sample file is meant as a guide only. Do not copy/paste the entire content into your applicatio ...

  3. 最近学习工作流 推荐一个activiti 的教程文档

    全文地址:http://www.mossle.com/docs/activiti/ Activiti 5.15 用户手册 Table of Contents 1. 简介 协议 下载 源码 必要的软件 ...

  4. Spring Boot文档

    本文来自于springboot官方文档 地址:https://docs.spring.io/spring-boot/docs/current/reference/html/ Spring Boot参考 ...

  5. ABP文档 - 通知系统

    文档目录 本节内容: 简介 发送模式 通知类型 通知数据 通知重要性 关于通知持久化 订阅通知 发布通知 用户通知管理器 实时通知 客户端 通知存储 通知定义 简介 通知用来告知用户系统里特定的事件发 ...

  6. ABP文档 - 本地化

    文档目录 本节内容: 简介 应用语言 本地化源 XML文件 注册XML本地化源 JSOn文件 注册JSON本地化源 资源文件 自定义源 获取一个本地文本 在服务端 在MVc控制器里 在MVC视图里 在 ...

  7. SpingMVC 核心技术帮助文档

    声明:本篇文档主要是用于参考帮助文档,没有实例,但几乎包含了SpringMVC 4.2版本的所有核心技术,当前最新版本是4.3,4.2的版本已经经是很新的了,所以非常值得大家一读,对于读完这篇文档感觉 ...

  8. ABP 教程文档 1-1 手把手引进门之 ASP.NET Core & Entity Framework Core(官方教程翻译版 版本3.2.5)

    本文是ABP官方文档翻译版,翻译基于 3.2.5 版本 官方文档分四部分 一. 教程文档 二.ABP 框架 三.zero 模块 四.其他(中文翻译资源) 本篇是第一部分的第一篇. 第一部分分三篇 1- ...

  9. ABP文档笔记 - 通知

    基础概念 两种通知发送方式 直接发送给目标用户 用户订阅某类通知,发送这类通知时直接分发给它们. 两种通知类型 一般通知:任意的通知类型 "如果一个用户发送一个好友请求,那么通知我" ...

  10. Anakia 转换xml文档为其他格式

    一.简介 Anakia 使用JDOM 和Velocity将XML文档转换为特定格式的文档 二.解析xml文档方法 1.DOM java jdk,xml-api.jar 需要加载整个xml文档来构建层次 ...

随机推荐

  1. /proc/pids/io

    rchar:代表自进程启动以来所读取的总字符数,包括通过缓存或直接读取的字符.单位是字节(bytes). wchar:代表自进程启动以来所写入的总字符数,包括通过缓存或直接写入的字符.单位是字节(by ...

  2. OCR+PDF解析配套前端工具开源详解!

    面对日常生活和工作中常见的OCR识别.PDF解析.翻译.校对等场景,配套的可视化工具能够极大地提升我们的使用体验和工作效率. 通过可视化界面,我们可以直观地看到文本识别.解析和翻译的结果,便捷评估产品 ...

  3. 墨天轮高分技术文档分享——Oracle升级迁移篇(共96个)

    朋友们好久不见,在上期<墨天轮最受欢迎的技术文档-SQL优化篇>的留言中,有许多朋友表示想看数据库升级迁移相关的内容,经过搜集整理,这就为大家呈上!原文送墨值中,欢迎大家参与~ 数据库升级 ...

  4. threejs 几何体的本质 顶点

    几何体的线框模式, 一个正方平面最少可以由4个顶点组成,两个三角形组成(公用了 2个顶点,使用了索引创建顶点属性) . // 导入 threejs import * as THREE from &qu ...

  5. 快来考试拿证书!KubeSphere 个人技能专业考试认证上线啦!

    以容器技术和容器编排为基础的云原生应用,被越来越多的企业用户接受和使用,并且在生产环境中使用容器技术的比例逐年增加.Kubernetes 无疑已经成为容器编排的事实基础,而依托于 Kubernetes ...

  6. KubeSphere v4 全解析:揭秘您最关心的 12 大热点问题

    为了助力大家更顺畅地使用 KubeSphere v4,我们精心汇总了十二个开发者高频关注的热点问题,这些问题全面覆盖了功能特性.性能表现.兼容性考量.安全保障以及升级流程等关键方面.接下来,我们将为大 ...

  7. CodeQL学习笔记(1)-QL语法(逻辑连接词、量词、聚合词、谓词和类)

    最近在学习CodeQL,对于CodeQL就不介绍了,目前网上一搜一大把.本系列是学习CodeQL的个人学习笔记,根据个人知识库笔记修改整理而来的,分享出来共同学习.个人觉得QL的语法比较反人类,至少与 ...

  8. 2024 AH CSP-S 迷惑行为大赏

    洛谷专栏阅读:https://www.luogu.com.cn/article/0atx674s 一.概述 观前提示:本届CSP-S安徽省整活相较于其他省份不是那么"群英荟萃",观 ...

  9. VS项目无法加载js或其他文件

    1.查看文件位置项目是否加载进去 2.将文件显示,再次找到该目录将文件添加到项目中 3.启动调试,

  10. 低功耗4G模组:tcs3472颜色传感器示例

    ​ 今天我们学习合宙低功耗4G模组Air780EP的LuatOS开发tcs3472示例,文末[阅读原文]获取最新资料1 一.简介 tcs3472颜色传感器能够读取照射到的物体的RGB三种数值,从而识别 ...