一、介绍
Kratos 一套轻量级 Go 微服务框架,蕴含大量微服务相干框架及工具。
由 bilibili 开源进去,在 b 站大量应用。
官网网址:https://go-kratos.dev/docs/
本入门教程,将会教大家装置以及入门应用。
二、装置
1、装置 go
能够到官网 https://go.dev/dl/
下载对应的包,而后装置。
2、装置 protobuf
咱们应用 brew 装置
brew install protobuf
装置好了后,咱们能够应用 执行一下 protoc –version
➜ protoc --version
libprotoc 3.21.7
3、装置 protobuf 的 go 扩大工具 protoc-gen-go
go install google.golang.org/protobuf/cmd/protoc-gen-go
4、装置 kratos
go install github.com/go-kratos/kratos/cmd/kratos/[email protected]
三、创立我的项目
通过 kratos 命令创立我的项目模板:
kratos new helloworld
咱们进入 helloworld 查看一下文件构造
➜ cd helloworld
➜ tree
构造如下:
├── Dockerfile
├── LICENSE
├── Makefile
├── README.md
├── api
│ └── helloworld
│ └── v1
│ ├── error_reason.pb.go
│ ├── error_reason.proto
│ ├── greeter.pb.go
│ ├── greeter.proto
│ ├── greeter_grpc.pb.go
│ └── greeter_http.pb.go
├── cmd
│ └── helloworld
│ ├── main.go
│ ├── wire.go
│ └── wire_gen.go
├── configs
│ └── config.yaml
├── go.mod
├── go.sum
├── internal
│ ├── biz
│ │ ├── README.md
│ │ ├── biz.go
│ │ └── greeter.go
│ ├── conf
│ │ ├── conf.pb.go
│ │ └── conf.proto
│ ├── data
│ │ ├── README.md
│ │ ├── data.go
│ │ └── greeter.go
│ ├── server
│ │ ├── grpc.go
│ │ ├── http.go
│ │ └── server.go
│ └── service
│ ├── README.md
│ ├── greeter.go
│ └── service.go
├── openapi.yaml
└── third_party
四、Kratos 我的项目构造介绍
4.1、Makefile 文件为 make 命令的一个文件,咱们关上有如下命令
4.1.1 make init
init:
go install google.golang.org/protobuf/cmd/[email protected]
go install google.golang.org/grpc/cmd/[email protected]
go install github.com/go-kratos/kratos/cmd/kratos/[email protected]
go install github.com/go-kratos/kratos/cmd/protoc-gen-go-http/[email protected]
go install github.com/google/gnostic/cmd/[email protected]
go install github.com/google/wire/cmd/[email protected]
会初始化装置这个框架的一个依赖。
如果之后本人还有一些工具之类的须要装置,能够放到这里。