【XXL-JOB】2-2.执行器项目的搭建--执行定时任务(go)

 场景

  • 1.项目中已搭建好XXL-job调度中心,(安装请移步)
  • 2. go语言 项目

官方文档   分布式任务调度平台XXL-JOB

步骤

  • Step1:调度中心--注册执行器

package main

import (
	"github.com/gin-gonic/gin"
	"github.com/gin-middleware/xxl-job-executor"
	"github.com/xxl-job/xxl-job-executor-go"
	"github.com/xxl-job/xxl-job-executor-go/example/task"
	"log"
)

const Port = "9999"

func main() {
	//初始化执行器
	exec := xxl.NewExecutor(
		xxl.ServerAddr("http://115.xxx.xxx.xxx:18080/xxl-job-admin"),//调度中心地址
		xxl.AccessToken("default_token"),    //请求令牌(默认为default_token)
		xxl.ExecutorIp("47.104.xxx.xxx"),    //服务器地址(云服务器等,外网地址)
		xxl.ExecutorPort(Port),         //默认9999(此处要与gin服务启动port必需一至)
		xxl.RegistryKey("golang-jobs"), //执行器名称
	)
	exec.Init()
	defer exec.Stop()

	//添加到gin路由
	r := gin.Default()
	xxl_job_executor_gin.XxlJobMux(r, exec)

	//注册gin的handler
	r.GET("ping", func(cxt *gin.Context) {
		cxt.JSON(200, "pong")
	})

	//注册任务handler,task.Test为需要定时执行的任务
	exec.RegTask("task.test", task.Test)
	exec.RegTask("task.test2", task.Test2)
	exec.RegTask("task.panic", task.Panic)

	log.Fatal(r.Run(":" + Port))
}
  • Step2:调度中心添加执行器

http://ip:port/xxl-job-admin/toLogin

执行器名称(Appname):见Step1 appname: golang-jobs  #xxljob配置的执行器名称,

  • Step3:添加执行器的定时任务

 

 参考

与gin框架集成

https://github.com/gin-middleware/xxl-job-executor

posted @ 2022-09-07 12:39  随风落木  阅读(134)  评论(0)    收藏  举报  来源