摘要: 结构: 1.系统说明 2.dkron部署运行 3.Dkron项目结构 一、Dkron 分布式异步调度系统,满足分布式集群部署(基于serf机制)及调度机制(基于raft协议),支持任务cron定时循环执行,失败重试执行次数限制,任务的并发执行,父任务及子任务的链式执行机制。 二、Dkron部署运行 阅读全文
posted @ 2020-12-25 10:56 Single_Dont 阅读(1289) 评论(0) 推荐(0) 编辑
摘要: 一、Dkron——服务器配置信息 dkron 的命令行操作都以dkron 开头,后面可以跟着不同的配置信息,例如在命令行敲出以下命令 :dkron agent --server --bootstrap-expect= 1 表示dkron以代理服务器形式启动,并且提供数据中心中预期的服务器数量为1。 阅读全文
posted @ 2020-12-25 10:48 Single_Dont 阅读(794) 评论(0) 推荐(0) 编辑
摘要: Dkron说明 Dkron是一个分布式,启动迅速,容错的定时任务系统,支持cron表达式。 Dkron特点: 易用:易操作和漂亮的UI 可靠:支持容错 高可扩展性:能够处理大量的计划作业和数千个节点 Dkron是用Go编写的,它利用Raft协议和Serf的强大功能提供容错性、可靠性和可扩展性,同时保 阅读全文
posted @ 2020-12-25 10:47 Single_Dont 阅读(1057) 评论(0) 推荐(0) 编辑
摘要: 1.前置条件 已安装go1.13.15环境 2.module概念 module是一个相关Go包的集合,它是源代码更替和版本控制的单元。模块由源文件形成的go.mod文件的根目录定义,包含go.mod文件的目录也被称为模块根。moudles取代旧的的基于GOPATH方法来指定在工程中使用哪些源文件或导 阅读全文
posted @ 2020-09-06 19:56 Single_Dont 阅读(4933) 评论(0) 推荐(0) 编辑
摘要: 知识点 通道拥有阻塞机制(无缓冲区),有缓冲区同理。 接收端在发送端数据发送完成之前(通道为nil),处于阻塞状态 发送端在接收端数据拿走完成之前(通道为满),处于阻塞态 注意点 1.struct{}类型不占空间,作为通道的一种信号方式 2.chan类型为引用类型,故需要进行初始化,申请空间,在通道 阅读全文
posted @ 2020-08-23 21:07 Single_Dont 阅读(406) 评论(0) 推荐(0) 编辑
摘要: 模拟这样一个场景:当我们知道我们要执行操作的名字,让其作为参数传入,如何通过这个名字取执行相应的函数处理呢? 解决方法:(这里设定一个结构A,其变量a,实现相应函数为fun1、fun2) ①:首先在编码过程中,我们可以将相应的处理函数进行“同一结构”实现,让其函数名和相应处理函数用map结构形成映射 阅读全文
posted @ 2020-08-23 20:11 Single_Dont 阅读(1154) 评论(0) 推荐(0) 编辑
摘要: 反射三大定律 反射第一定律:反射可以将“接口类型变量”转换为“反射类型对象” 1.使用v := reflect.TypeOf(a),对基本类型进行反射处理,因为TypeOf函数原型为:func TypeOf(I interface{})Type;故符合第一条定律 2.reflect.ValueOf( 阅读全文
posted @ 2020-08-23 19:27 Single_Dont 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 强类型定义语言(go) 1.强制数据类型定义的语言。也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。 2.注意:①如果你定义了一个整型变量 a,那么程序根本不可能将 a 当作字符串类型处理。 ②强类型定义语言是类型安全的语言。 ③当你定义一个变量是某个类 阅读全文
posted @ 2020-08-23 19:23 Single_Dont 阅读(1113) 评论(0) 推荐(0) 编辑
摘要: 初学GO,time包里sleep是最常用,今天突然看到一个time.after,特记录time.after用法笔记如下: 首先是time包里的定义: //After waits for the duration to elapse and then sends the current time on 阅读全文
posted @ 2020-07-30 23:27 Single_Dont 阅读(1224) 评论(0) 推荐(0) 编辑
摘要: 早期的select函数是用来监控一系列的文件句柄,一旦其中一个文件句柄发生IO操作,该select调用就会被返回。golang在语言级别直接支持select,用于处理异步IO问题。 select用法同switch类似,如下: timeout := make (chan bool, 1)ch := m 阅读全文
posted @ 2020-07-29 23:26 Single_Dont 阅读(676) 评论(0) 推荐(0) 编辑