记录对定时任务调度器的小小改进 - API调度计划
之前记录过一篇 【开源一个定时任务调度器 webscheduler】,这是一个看似简单的小工具,昨天部署到服务器上开始试用下,听听反馈。
项目经理看过后,立马反馈说这个使用 Cron表达式 的计划太难理解,建议改成 一分钟,五分钟,十分钟等等组成的列表,简单选择下就好。
之前我也考虑这个问题,Cron表达式对于使用者来说是非常难以理解,所以在菜单上挂接了两个外链:Cron表达式生成,Cron表达式解析。
Cron表达式生成
Cron表达式解析
在开发者的角度而言,我的任务已经完成了,你看 1、表达式的生成有了,2、表达式的解析也有了,3、调度计划也可以录入。
但如果站在使用者的角度而言,我要完成一个目标,但需要涉及到三个页面,还需要搞清楚这三个页面的关系,确实有些复杂了。一般的桌面程序采用向导来处理这种复杂的事情,一步步引导用户完成目标。这里我不搞的这么复杂,简单就好。
那设想下直接采用新手用户的建议:
这样简单是简单了,但是与当初的功能设计是有出入的: 定点、定时设置计划。 不能定点设置,不能自由设置定时。虽然满足了新手需求,但是不能提供更加高级的功能。
考虑到实现高级功能,我做了改进,如果是初级用户,可以在【常用表达式】中简单选择一个,然后点击【选择】,这样就会生成一个新的 Cron表达式。如果想自行修改表达式,直接修改(3)处的输入框就好。
可是这样的设计仍然有问题,(3)处的输入框中的表达式到底是什么意思,看是看不出来的,还需要一个解析描述。
好了,这是我最后的修改方案了。
记录对定时任务调度器的小小改进 - API调度计划的更多相关文章
- 2. SOFAJRaft源码分析—JRaft的定时任务调度器是怎么做的?
看完这个实现之后,感觉还是要多看源码,多研究.其实JRaft的定时任务调度器是基于Netty的时间轮来做的,如果没有看过Netty的源码,很可能并不知道时间轮算法,也就很难想到要去使用这么优秀的定时调 ...
- 基于Spring Task的定时任务调度器实现
在很多时候,我们会需要执行一些定时任务 ,Spring团队提供了Spring Task模块对定时任务的调度提供了支持,基于注解式的任务使用也非常方便. 只要跟需要定时执行的方法加上类似 @Schedu ...
- 开源一个定时任务调度器 webscheduler
在企业应用中定时任务调度的需求是必不可少的,比如定时同步数据,定时结转数据,定时检测异常等等.公司之前是在使用一款采用.net 开发的windows服务形式的定时程序,基本能满足需求,在一段时间的时候 ...
- SpringBoot2 task scheduler 定时任务调度器四种方式
github:https://github.com/chenyingjun/springboot2-task 使用@EnableScheduling方式 @Component @Configurabl ...
- quartz 定时任务调度管理器
本项目使用的是spring-quartz 以下配置可以开启多个已知定时任务 <?xml version="1.0" encoding="UTF-8"?&g ...
- C#/.NET/.NET Core定时任务调度的方法或者组件有哪些--Timer,FluentScheduler,TaskScheduler,Gofer.NET,Coravel,Quartz.NET还是Hangfire?
原文由Rector首发于 码友网 之 <C#/.NET/.NET Core应用程序编程中实现定时任务调度的方法或者组件有哪些,Timer,FluentScheduler,TaskSchedule ...
- C#/.NET/.NET Core定时任务调度的方法或者组件有哪些--Timer,FluentScheduler还是...
原文:C#/.NET/.NET Core定时任务调度的方法或者组件有哪些--Timer,FluentScheduler还是... 原文由Rector首发于 码友网 之 <C#/.NET/.NET ...
- [原创]php任务调度器 hellogerard/jobby
目录 简介 安装 标准使用 选项 项目实践 简介 一个强大的php层面上的定时任务调度器, 无需修改系统层面的crontab 实际中, php 结合 crontab 来实现定时任务是一种经得住考验的实 ...
- Java定时任务调度详解
前言 在实际项目开发中,除了Web应用.SOA服务外,还有一类不可缺少的,那就是定时任务调度.定时任务的场景可以说非常广泛,比如某些视频网站,购买会员后,每天会给会员送成长值,每月会给会员送一些电影券 ...
随机推荐
- Function- 几个转换函数
几个转换函数 SJIS_DBC_TO_SBC 全角转半角SJIS_SBC_TO_DBC 半角转全角 CLPB_IMPORT :从剪贴板导入internal tableCLPB_EXPORT : 从in ...
- ubuntu安装pip和python
安装pip2sudo apt-get install pip 这样安装的是pip2不支持Python3.x,可以使用如下命令安装pip3 sudo apt-get install python3-pi ...
- iOS swift 语句只能写在函数体内
1. 语句只能在函数体内: eg 因为我写在playground里面没报错 我直接放在这个位置就报错了 在这个.swift 文件里面 print 应该写在func 等方法(函数)里面 其他语句 ...
- action extension添加图标
最近在做ios的action extension,这里记录一下添加图标的方法. 在Action Extension的target里面的Build Settings,里面的Asset Catalog C ...
- c的详细学习(11)文件
为了提高数据输入/输出的处理效率,可以将程序运行时所需要的原始数据从文件中读取,并将程序运行的结果写入到文件中. (1)文件概述 1)基本概念 文件是指存储在外部介质上数据的集合,可以 ...
- [原创]关于在CentOS 7.0 下 安装nfs ,遇见 Transaction check error问题的解决
今天小弟的同学在使用阿里云的服务器安装nfs的时候,出现了一下问题 Transaction check error: file /usr/lib/systemd/system/blk-availabi ...
- android电池(四):电池 电量计(MAX17040)驱动分析篇【转】
本文转载自:http://blog.csdn.net/xubin341719/article/details/8969369 电池电量计,库仑计,用max17040这颗电量IC去计量电池电量,这种方法 ...
- Linux上网设置
ifconfig 命令查看网络设置 步骤1.配置/etc/sysconfig/network-scripts/ifcfg-eth0 里的文件.有的是(ifcfg-ens33) 文件 CentOS下的i ...
- [转] 在Mac上搭建React Native开发环境
原文链接: http://blog.csdn.net/xiangzhihong8/article/details/53914336 概述 前面我们介绍过在window环境下开发React Native ...
- Struts2的工作流程分析
Struts2的工作流程分析 Posted on 2011-02-22 09:32 概述 本章讲述Struts2的工作原理. 读者如果曾经学习过Struts1.x或者有过Struts1.x的开发经验, ...