Golang SDK接入
更新時(shí)間:
本文介紹如何將Golang應(yīng)用通過(guò)SDK快速接入SchedulerX。
控制臺(tái)配置
請(qǐng)參見(jiàn)創(chuàng)建應(yīng)用,創(chuàng)建一個(gè)普通應(yīng)用,并參見(jiàn)步驟2,生成配置信息。
endpoint=xxxx namespace=xxxx groupId=xxx appKey=xxx
請(qǐng)參見(jiàn)任務(wù)管理,創(chuàng)建一個(gè)Golang類(lèi)型任務(wù)。
客戶(hù)端接入
執(zhí)行以下命令,拉取Go版本SDK。
go get github.com/alibaba/schedulerx-worker-go@{最新的tag}
編寫(xiě)業(yè)務(wù)代碼,實(shí)現(xiàn)
Processor
接口。type Processor interface { Process(ctx *processor.JobContext) (*ProcessResult, error) }
示例:
package main import ( "fmt" "github.com/alibaba/schedulerx-worker-go/processor" "github.com/alibaba/schedulerx-worker-go/processor/jobcontext" "time" ) var _ processor.Processor = &HelloWorld{} type HelloWorld struct{} func (h *HelloWorld) Process(ctx *jobcontext.JobContext) (*processor.ProcessResult, error) { fmt.Println("[Process] Start process my task: Hello world!") // mock execute task time.Sleep(3 * time.Second) ret := new(processor.ProcessResult) ret.SetStatus(processor.InstanceStatusSucceed) fmt.Println("[Process] End process my task: Hello world!") return ret, nil }
注冊(cè)Client和Job,任務(wù)名稱(chēng)與控制臺(tái)保持一致。
package main import ( "github.com/alibaba/schedulerx-worker-go" ) func main() { // This is just an example, the real configuration needs to be obtained from the platform cfg := &schedulerx.Config{ Endpoint: "acm.aliyun.com", Namespace: "433d8b23-xxx-xxx-xxx-90d4d1b9a4af", GroupId: "xueren_sub", AppKey: "xxxxxx", } client, err := schedulerx.GetClient(cfg) if err != nil { panic(err) } task := &HelloWorld{} // 給你的任務(wù)取一個(gè)名字,并注冊(cè)到client中,要和控制臺(tái)保持一致 client.RegisterTask("HelloWorld", task) select {} }
結(jié)果驗(yàn)證
客戶(hù)端接入完成,將該應(yīng)用發(fā)布到阿里云。
- 登錄分布式任務(wù)調(diào)度平臺(tái)。
- 在頂部菜單欄選擇地域。
在左側(cè)導(dǎo)航欄,單擊應(yīng)用管理。
在應(yīng)用管理頁(yè)面查看實(shí)例總數(shù)。
如果實(shí)例總數(shù)為0,則說(shuō)明應(yīng)用接入失敗。請(qǐng)檢查、修改本地應(yīng)用。
如果實(shí)例總數(shù)不為0,顯示接入的實(shí)例個(gè)數(shù),則說(shuō)明應(yīng)用接入成功。在操作列單擊查看實(shí)例,即可在連接實(shí)例對(duì)話(huà)框中查看實(shí)例列表。
后續(xù)步驟
應(yīng)用接入SchedulerX完成后,即可在分布式任務(wù)調(diào)度平臺(tái)創(chuàng)建調(diào)度任務(wù)。更多信息,請(qǐng)參見(jiàn)創(chuàng)建調(diào)度任務(wù)。
相關(guān)文檔
文檔內(nèi)容是否對(duì)您有幫助?