美文网首页
Kratos从零到上线:1.框架说明

Kratos从零到上线:1.框架说明

作者: 风洛神 | 来源:发表于2020-03-28 14:29 被阅读0次
  • kratos官网说明
    https://github.com/go-kratos/kratos

  • 为啥要用该框架
    go语言可用框架有很多,例如:gin,go-mirco,kratos等。
    考虑到使用kratos的原因

1. 该框架是由哔哩开发的,也属于大厂。根据目前哔哩哔哩的流量,该框架也不会差到哪去
2. 该框架 http 服务器部分是基于 go 的 gin 做的二次开发
3. 该框架的 rpc 部分是基于 go 的 grpc 开发的,也可以使用谷歌的 *google.protocbuf* 等来约束 grpc 的字段( google 的 protocbuf 需要单独的学习)
4. 该框架集成了mysql / 服务注册发现 / 熔断机制 / redis / memcache等 
5. 服务注册和发现组件可以适配不同的框架。目前我们使用的是 etcd
6. 该框架清晰的分为 dao 层,server 层,service 层
7. 该框架使用 google 的 wire 实现不同服务的依赖注入
8. 有待发现
  • kratos框架的不足之处
1. mysql部分不支持orm框架,这一点很蛋疼。如果可以的话,自己修改mysql驱动部分来,可以集成gorm框架。
2. 基于.proto文件生成的bm.go和pb.go文件是必须同时存在的(除非你不用http服务部分)。主要是bm.go中以来的参数在pb.go中,很蛋疼。如果只需要http部分的话就会显得很臃肿,因为pb.go一般是groc生成的。听不懂可以往后看,慢慢就会明白这些
  • 开发环境包含
组件 说明
go环境 go1.13.6
kratos 0.3.3(版本应该没啥需求)

相关文章

网友评论

      本文标题:Kratos从零到上线:1.框架说明

      本文链接:https://www.haomeiwen.com/subject/aqzyuhtx.html