十四. go-zero底层原理与基本使用
文章平均质量分 94
go-zero使用与底层原理
苹果香蕉西红柿
这个作者很懒,什么都没留下…
展开
-
go 进阶 go-zero相关: 二. 服务启动与路由,中间件注册,请求接收底层原理
了解go-zero底层也是基于net/http标准库实现http的,是怎么实现的,怎么触发到net/http的go-zero也是基于前缀树进行路由注册的,是怎么注册的,注册过程中有哪些注意点go-zero中支持中间件, 在服务启动时,中间件,路由是如何保存的,接收请求时是如何执行的先看一下基础go-zero服务示例。原创 2023-06-28 18:08:32 · 1306 阅读 · 5 评论 -
go 进阶 go-zero相关: 五. 服务发现原理
【代码】go 进阶 go-zero相关: 四. 服务发现原理。原创 2023-05-12 09:06:06 · 475 阅读 · 0 评论 -
go 进阶 go-zero相关: 十. redis与缓存高级
这一块代码大同小异,都是加锁,操作,再解锁的方式来进行并发管理的。通过这一块代码的阅读,基本可以明确LRU模块和命中率统计模块是如何工作的。key参数:可以理解为资源的唯一标识。fn参数:真正获取资源的方法。原创 2023-05-11 16:04:26 · 967 阅读 · 0 评论 -
go 进阶 go-zero相关: 九. goctl 生成数据库与缓存逻辑
【代码】go 进阶 go-zero相关: 八. goctl 生成数据库与缓存逻辑。原创 2023-05-11 16:04:10 · 564 阅读 · 0 评论 -
go 进阶 go-zero相关: 八. 高可用
【代码】go 进阶 go-zero相关: 七. 高可用。原创 2023-05-11 16:03:54 · 157 阅读 · 0 评论 -
go 进阶 go-zero相关: 七. 拦截器与熔断拦截器
参考博客在go-zero 中提供了拦截器功能go-zero中拦截器可以在两个角度分类类型角度分为: 一元拦截器, 流式拦截服务角度分为: 服务端拦截器, 客户端拦截器。原创 2023-05-11 16:03:37 · 755 阅读 · 0 评论 -
go 进阶 go-zero相关: 六. 负载均衡与请求的发出
在调用p2cPicker的pick()方法中首先会将节点封装为SubConn, 会执行p2cPicker下的choose()选择指定节点,在choose()方法内部会调用subConn的load()方法计算节点的负载情况,选择最低的一个,查看该方法参考博客原创 2023-05-11 16:03:21 · 400 阅读 · 0 评论 -
go 进阶 go-zero相关: 四. 服务注册原理
【代码】go 进阶 go-zero相关: 三. 服务注册。原创 2023-05-10 09:55:43 · 544 阅读 · 0 评论 -
go 进阶 go-zero相关: 三. go-zero 微服务基础示例
编译命令执行完毕后,会生成一下代码:其中 types/XXX/xxx.pb.go文件与types/XXX/xxx_grpc.pb.go是通过proto生成的,参考grpc“xxx.pb.go”: 内部是编写这个rpc服务时自定义的结构体相关处理“xxx_grpc.pb.go”: 内部是启动这个rpc服务端,启动访问这个rpc客户端的相关代码通过go-zero生成的其中user.proto是用来生成rpc服务的IDL文件。原创 2023-05-10 09:55:07 · 1346 阅读 · 0 评论 -
go 进阶 go-zero相关: 一. go-zero 基础
├── etc│ └── core-api.yaml // 配置文件├── go.mod // mod文件├── greet.api // api描述文件├── core.go // main函数入口├── config│ └── config.go // 配置声明type├── handler // 路由及handler转发├── logic // 业务逻辑├── middleware // 中间件文件├── svc // logic所依赖的资源池。原创 2023-05-10 09:53:41 · 2410 阅读 · 0 评论