给力小青年|Go 每日一库之 jobrunner( 二 )
package mainimport ("fmt""html/template""os""time""github.com/bamzi/jobrunner""github.com/gin-gonic/gin")type GreetingJob struct {Name string}func (g GreetingJob) Run() {fmt.Println("Hello,", g.Name)}type EmailJob struct {Email string}func (e EmailJob) Run() {fmt.Println("Send,", e.Email)}func main() {r := gin.Default()jobrunner.Start()jobrunner.Every(5*time.Second, GreetingJob{Name: "dj"})jobrunner.Every(10*time.Second, EmailJob{Email: "935653229@qq.com"})r.GET("/jobrunner/json", JobJson)r.GET("/jobrunner/html", JobHtml)r.Run(":8888")}func JobJson(c *gin.Context) {c.JSON(200, jobrunner.StatusJson())}func JobHtml(c *gin.Context) {t, err := template.ParseFiles(os.Getenv("GOPATH") + "/src/github.com/bamzi/jobrunner/views/Status.html")if err != nil {c.JSON(400, "error")}t.Execute(c.Writer, jobrunner.StatusPage())}
运行之后 , 在浏览器中输入http://localhost:8888/jobrunner/html查看任务状态:
这里显示任务名、任务 ID、状态、上次运行时间、下次运行时间以及处理延迟 。
我们还可以通过http://localhost:8888/jobrunner/json获取原始 JSON 格式的数据自己处理:
总结大家如果发现好玩、好用的 Go 语言库 , 欢迎到 Go 每日一库 GitHub 上提交 issue
参考
- jobrunner GitHub:
- Go 每日一库 GitHub:
推荐阅读
- 天秤座每日运势|天秤座每日运势2020年10月20日2020/10/20 #天秤座# 每日运势
- 安卓每日推送|淘汰有线充电!19分钟就能充满电
- 净利|每日净赚超7600万元 牧原股份前三季净利增14倍
- |每日撸报:TheShy直播透露明年可能是Rookie最后一年
- 每日搭配指南|懂穿搭的女人才会美,秋季简单又高级的“叠穿”示范,谁穿谁好看
- 帅帅的龙仔|你确定画完以后不会被打么?,每日一笑:大师
- Buy遍全球1004|每日一葩:人生中第一个差评竟是因为绿色赠品?
- 每日搭配指南|秋季学院风半身长裙穿搭示范,优雅减龄又显气质,太好看了
- 每日汽车新闻|外观比炮更霸气,江淮悍途将上市,国产版的“猛禽”
- 美美姐见闻|每日爆笑:我到底该不该留下吃饭呢?