1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- package main
-
- import (
- "github.com/go-sql-driver/mysql"
- "github.com/zjxpcyc/tinylogger"
- "xorm.io/xorm"
- )
-
- var DB *xorm.Engine
-
- // logger 日志记录器
- var logger = tinylogger.NewLogger()
-
- // InitDB 初始化数据库
- func InitDB() error {
- // 连接数据库
- config := mysql.NewConfig()
- config.User = "serverless"
- config.Passwd = "XyooUowbyE3f5Cam"
- config.Net = "tcp"
- config.Addr = "rm-uf6z3z6jq11x653d77o.mysql.rds.aliyuncs.com"
- config.DBName = "job_for_serverless"
- config.Params = map[string]string{
- "charset": "utf8",
- }
-
- var err error
- DB, err = xorm.NewEngine("mysql", config.FormatDSN())
- if err != nil {
- logger.Error(err)
- return err
- }
-
- // 打印SQL
- // DB.ShowSQL(true)
-
- return nil
- }
-
- func main() {
- // 初始化数据库
- if err := InitDB(); err != nil {
- panic(err)
- }
-
- // 开启 job 服务
- job := NewJobPool()
- job.Callback(Exec)
- job.Start()
-
- //
- limit := []int{100}
- tasks := GetTasks(limit)
-
- // logger.Info("All Tasks: ", tasks)
-
- for _, task := range tasks {
- job.Push(task)
- }
-
- job.Done(len(tasks))
- }
|