Kratos 一套轻量级 Go 微服务框架,包含大量微服务相关功能及工具。
名字来源于:《战神》游戏以希腊神话为背景,讲述奎托斯(Kratos)由凡人成为战神并展开弑神屠杀的冒险经历。
我们致力于提供完整的微服务研发体验,整合相关框架及工具后,微服务治理相关部分可对整体业务开发周期无感,从而更加聚焦于业务交付。对每位开发者而言,整套 Kratos 框架也是不错的学习仓库,可以了解和参考到微服务方面的技术积累和经验。
go install cnb.cool/mohuansuper/kratos/cmd/kratos/v2@latest kratos upgrade
git clone https://cnb.cool/mohuansuper/kratos cd kratos make install
# 创建项目模板 kratos new helloworld cd helloworld # 拉取项目依赖 go mod download # 生成proto模板 kratos proto add api/helloworld/helloworld.proto # 生成proto源码 kratos proto client api/helloworld/helloworld.proto # 生成server模板 kratos proto server api/helloworld/helloworld.proto -t internal/service # 生成所有proto源码、wire等等 go generate ./... # 运行程序 kratos run
import "cnb.cool/mohuansuper/kratos/v2" import "cnb.cool/mohuansuper/kratos/v2/transport/grpc" import "cnb.cool/mohuansuper/kratos/v2/transport/http" httpSrv := http.NewServer(http.Address(":8000")) grpcSrv := grpc.NewServer(grpc.Address(":9000")) app := kratos.New( kratos.Name("kratos"), kratos.Version("latest"), kratos.Server(httpSrv, grpcSrv), ) app.Run()

提交信息的结构应该如下所示:
<type>[optional scope]: <description> [optional body] [optional footer(s)]
提交信息应按照下面的格式:

Kratos is MIT licensed. See the LICENSE file for details.