依葫芦画瓢理解一个小型Go框架

网站建设3年前发布
11 0 0

最近在开发Go程序,同事(github.com/WiFeng/go-sky)参考go-kit框架封装了一个简易的轮子,包含了Api和Task任务,已经能满足大部分Web需求,依葫芦画瓢,自己理解了下,参考下图:,2023030601444068e84cc42c9a71625e7041f826578e465524aa477,初始化service、endpoint,NewHandler注册路由作为web服务,再注册Task运行后台任务。,返回一个大的Endpoints,其中包含子的Endpoints,会将service.Service结构体传递给Endpoints。,每一个子的Endpoint应该包含同一种类型的服务,最终调用对应的service服务方法。,不过ArticleInfoMGetRequest也可以在service\article.go(例子中注册在entity) 中定义。MakeArticleMGetEndpoint返回一个闭包,注册了一个路由。,entity包含特定的工具方法。,service大结构体初始化,包括子service初始化。,具体的service服务,包含req,response的定义,也可以定义到 entry 目录下。,dao方法,主要进行数据库等资源的操作。,注册http路由,endpoint作为参数传递给handler。

© 版权声明

相关文章