File tree 1 file changed +16
-3
lines changed
1 file changed +16
-3
lines changed Original file line number Diff line number Diff line change
1
+ - [ 轻量级任务调度框架] ( #轻量级任务调度框架 )
2
+ - [ 框架的设计思想和背景] ( #框架的设计思想和背景 )
3
+ - [ 任务系统的整体设计] ( #任务系统的整体设计 )
4
+ - [ 任务调度框架] ( #任务调度框架 )
5
+ - [ 任务容器分类] ( #任务容器分类 )
6
+ - [ 1. 同步任务和异步任务] ( #1-同步任务和异步任务 )
7
+ - [ 2. 可持久任务和不可持久化任务] ( #2-可持久任务和不可持久化任务 )
8
+ - [ Usage] ( #usage )
9
+ - [ 使用内存容器实现 a+b 任务调度] ( #使用内存容器实现-ab-任务调度 )
10
+ - [ 实现 a+b 任务执行器] ( #实现-ab-任务执行器 )
11
+ - [ 实现 a+b 任务容器] ( #实现-ab-任务容器 )
12
+ - [ 实现调度] ( #实现调度 )
13
+
1
14
# 轻量级任务调度框架
2
15
3
16
## 框架的设计思想和背景
47
60
48
61
任务根据不同的维度,任务可以分成
49
62
50
- #### 同步任务和异步任务
63
+ #### 1. 同步任务和异步任务
51
64
本框架主要实现了任务异步化,可以轻易的通过执行器的实现把同步任务转换成异步任务。注意:实现同步任务执行器的时候,不要阻塞 Start 方法,而是在单独的协程执行任务。
52
65
53
- #### 可持久任务和不可持久化任务
66
+ #### 2. 可持久任务和不可持久化任务
54
67
任务的是否可持久化,通俗来说,就是任务执行完成以后,是否还能查询到任务相关的信息和记录。
55
68
56
69
1 . 不可持久化任务——比如存储在内存队列里面的任务,执行完成以后,或者服务宕机、重启以后,任务相关的数据消失,无迹可寻。
71
84
由于 MemeoryContainer 和 PersistContainer 各有优缺点,如果可以组合两种容器,生成一种新的任务容器[ combinationContainer] ( https://github.com/memory-overflow/go-common-library/blob/main/task_scheduler/container/combination_container.go ) ,既能够通过内存实现快写快读,又能够通过DB实现可持久化。
72
85
![ image] ( https://user-images.githubusercontent.com/15645203/210742391-ae2c60ac-9f19-4d1a-947b-634e3a3855ef.png )
73
86
74
- ## usage
87
+ ## Usage
75
88
76
89
### 使用内存容器实现 a+b 任务调度
77
90
You can’t perform that action at this time.
0 commit comments