当前位置: 首页 > 工具软件 > Kratos > 使用案例 >

【kratos】kratos 框架使用新的,还是非常好的技术框架,还要继续学习,掌握了proto 文件的使用、wire的使用就方便了。

梁丘翔
2023-12-01

1,使用的kratos 版本是:v2.2.1

使用项目创建一个带web端和 grpc 服务的。 使用 wire 进行依赖注入。
kratos 的官方网站是:

https://go-kratos.dev/docs/

https://go-kratos.dev/blog/go-project-wire

使用之后,这个是和 java 的spring 依赖注入最大的区别的地方。 开始没有太明白,后来才发现确实是非常的好用。

要突破 java 的那种思维,去找 xml 进行配置。也不用 autowired resource 那样去注解。

需要在每层上面都加上 ProviderSet,然后把 构造对象加入进去。 很魔幻的就把代码给生成了。

需要注意的是,kratos 在使用 wire 的 make 老是报错,后来直接用 go install 把 wire 命令编译好,就方便多了。

学习 wire 确实非常让人费解,需要花时间去理解 google 大神的精华。 理解好了就非常方便了,不是在go中找 spring 框架的影子,而是适合golang 的kratos框架,意义类似。

2,在kratos 上使用的是 ent 做数据库 ORM,但是觉得还是GORM更容易接受

https://go-kratos.dev/docs/guide/ent

这个也是超乎想象,是需要生成一大堆文件夹的代码然后再使用的。 开始以为放错地方了。后来才知道原理就是这样依赖的。 这个学习接受起来更麻烦,考虑再三,还是老实用个简单 GORM 做数据库持久层吧。

https://github.com/go-gorm/gorm

https://gorm.io/zh_CN/docs/index.html

3,例子汇总

博客例子:
https://github.com/go-kratos/examples/tree/main/blog
啤酒店例子:
https://github.com/go-kratos/beer-shop

4,学习视频

kratos 框架还有官方的学习视频,非常的不错。

4.1 Kratos入门实战 01:项目创建和介绍

Kratos入门实战 01:项目创建和介绍

4.2 Kratos入门实战 02:API定义与生成

Kratos入门实战 02:API定义与生成

4.3 Kratos入门实战 03:数据库接入与配置修改

Kratos入门实战 03:数据库接入与配置修改

4.4 Kratos入门实战 04:项目结构和依赖注入

Kratos入门实战 04:项目结构和依赖注入

4.5 Kratos入门实战 05:biz层开发和中间件简介

Kratos入门实战 05:biz层开发和中间件简介

4.6 Kratos入门实战 06:自定义中间件

Kratos入门实战 06:自定义中间件

4.7 Kratos入门实战 07:CORS和HTTP中间件自定义

Kratos入门实战 07:CORS和HTTP中间件自定义

4.8 Kratos入门实战 08:HTTP错误返回结构自定义

Kratos入门实战 08:HTTP错误返回结构自定义

4.9 Kratos入门实战 09:data层开发

Kratos入门实战 09:data层开发

4.10 Kratos入门实战 10:错误处理

Kratos入门实战 10:错误处理

5,总结

kratos 是非常不错的框架,而且是国人开发的微服务全栈框架。
减少了大家使用golang 去选择的难度。
而且是直接从B站的生产系统上衍生出来的框架技术。
有相关多的实战经验设计在里面,随着国内的企业越来越多的使用golang 进行开发。
这个非常好的框架会得到很好的普及,同时反向回馈 kratos 框架。形成良性循环。
类似于 java spring cloud 中的地位,降低了学习门槛。

 类似资料: