Myf框架的Golang框架核心库(golang 数据库框架)

网友投稿 798 2022-10-12 19:42:01

Myf框架的Golang框架核心库(golang 数据库框架)

myf-go

Myf框架的Golang框架核心库

特性

cat埋点的客户端实现,包括:mysql、redis、http订制的请求context,自动熔断超时请求,提供多种丰富特性原生的gin操作体验

初始化项目

例如,新建项目地址:https://github.com/owenliang/myf-go-mvc,则依次执行如下:

go mod init github.com/owenliang/myf-go-mvcgo get -u github.com/owenliang/myf-go@最新tag版本

开发web应用

创建main.go如下:

package mainimport ( "flag" "fmt" "github.com/gin-gonic/gin" "github.com/owenliang/myf-go/app" "github.com/owenliang/myf-go/mcontext" "os")func Test(ctx *mcontext.MyfContext) { ctx.JSON(200, &gin.H{ "error_code": 0, "error_msg": "", "data": nil, })}func main() { flag.Parse() if myfApp, err := app.New(); err == nil { myfApp.Gin.GET("/test", myfApp.WithMyfContext(Test)) myfApp.Run() } else { fmt.Fprintln(os.Stderr, err) }}

编写app.toml:

domain = "myf-go.smmyf.com"debug = 1# web模式[App]listen = "0.0.0.0:8087"# cat配置[Cat] isOpen = true

启动:

go run main.go -conf ./app.toml

开发cron定时任务

package mainimport ( "flag" "fmt" "github.com/owenliang/myf-go/cron" "github.com/owenliang/myf-go/cron/middlewares" "github.com/owenliang/myf-go/mcontext" "time")func task1(myfCtx *mcontext.MyfContext) { // <- myfCtx.Done()}func main() { flag.Parse() if myfCron, err := cron.New(); err == nil { myfCron.AddJob("mytask", "* * * * *", middlewares.WithTimeout(5 * time.Second), myfCron.WithMyfContext(task1)) myfCron.Run() } else { fmt.Println(err) }}

编写app.toml:

domain = "myf-go.smmyf.com"debug = 1# cron模式[Cron]waitGraceExit = 5000# cat配置[Cat] isOpen = true

启动:

go run main.go -conf ./app.toml

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:1312_适用7z命令进行压缩与解压
下一篇:Aha!设计模式(79)-命令模式(4)
相关文章