B站自家的kratos微服务框架已经很成熟了,该API网关也是基于其框架之上建立起来的,也算是kateos的一个简要的使用案例吧。 项目目录 |-cmd/gateway | |-main.go 入口总文件,读取配置,启动kratos app |-server/server.go 网关服务,注入kratos app |-proxy/proxy.go 核心代理转发模块 |-router 路由模块 | |-mux/...
1. Kratos使用遇到的问题 1.1 安装kratos go install github.com/go-kratos/kratos/cmd/kratos/v2@latest kratos upgrade 1.2 需要安装的工具 首次按照网上文档去创建项目,出现了以下错误且网上大部分文档的教程都无法解决问题 protoc-gen-go-http: program not found or is not executable Please specify a progra...
我们推荐您使用 kratos 提供的项目结构,但您可以随意修改这个模板,或者使用自己喜欢的项目结构,框架本身不对项目做任何限制,您可以按照自己的想法来使用,具有很强的可定制性。 gateway一个使用 Go 语言开发的 API Gateway,后续您可以使用它作为您项目的微服务网关,用于微服务 API 的治理,项目正在研发中,敬请期待。 架...
1,使用make 命令来编译和下载所有框架 代码语言:javascript 代码运行次数:0 运行 AI代码解释 make api make all 2,使用wire 命令来依赖注入 代码语言:javascript 代码运行次数:0 运行 AI代码解释 wire./... 3,启动我们的kratos项目 代码语言:javascript ...
137 149 - ws-gateway <-> ws-api使用多个gRPC Streaming通道交换数据 app/ws-api/cmd/ws-api/main.go +2 Original file line numberDiff line numberDiff line change @@ -7,6 +7,7 @@ import ( 7 7 "github.com/pkg/errors" 8 8 _ "go.uber.org/automaxprocs" 9 9 "google.gola...
Kratos的RPC默认使用的是gRPC,与此同时我们还可以通过gRPC的grpc-gateway功能对RESTfull进行支持。这样,我们就可以同时支持gRPC和REST了。而这一切Kratos都已经封装好,无需知道底层的一切,用就好了。 gRPC是基于Protobuf作为接口规范的描述语言(IDL,Interface Description Language)。换句通俗的话来说,gRPC使用Protobuf来...
gateway这个是我们刚刚起步,用Go开发的API Gateway,后续您可以使用它来作为您Kratos微服务的网关,用于微服务API的治理,项目正在施工中,欢迎关注。 仓库、文档和社区 GitHub仓库:https://github.com/go-kratos 文档:https://go-kratos.dev/ 微信群:go-kratos 官方微信群 ...
安装protoc插件 go get -u github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2 然后执行命令 protoc -I . --openapiv2_out ./ --openapiv2_opt logtostderr=true --openapiv2_opt json_names_for_fields=false xxxx文件名.proto 会在当前目录生成文档 ...
brewinstallxorgproto# go安装github包goinstallgithub.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2@v2.2.0# 需要下载包git clone git@github.com:go-swagger/go-swagger.git goinstall./cmd/swagger #opentelemetry(trace安装) # 主要参考官网链接# https://opentelemetry.io/docs/collector/getting-sta...