转换为:简体中文
关于kratos
这个名字的灵感来自基于希腊神学的游戏“战神”。它讲述了kratos因凡人而成为战神的冒险经历,并发起了杀死神的屠杀。
kratos是Golang实施的面向微服务的治理框架,该框架提供了方便的功能,可帮助您快速从头开始构建防弹应用程序,例如:
- 通信协议通过Protobuf的定义基于HTTP/GRPC。
- 抽象运输层支持:HTTP / GRPC。
- 强大的中间件设计,支持:跟踪(OpentElemetry),指标(Prometheus默认),恢复等等。
- 注册表接口可以通过插件与其他各种集中式注册表连接。
- 标准日志接口可以使第三方日志LIB与通过Fluentd收集的日志的集成。
- 自动支持使用Accept和Content-Type编码内容的选择。
- 支持多个数据源用于配置和动态配置(使用原子操作)。
- 在HTTP/GRPC的协议中,使用统一的元数据转移方法。
- 您可以定义原始人中的错误,并使用Protoc-Gen-Go产生枚举。
- 您可以在http/grpc服务支持的Protobuf中定义验证规则。
- 自动生成Swagger API,嵌入Swagger UI端点可以通过添加Swagger插件启动。
kratos是可访问,功能强大的,并提供了大型,可靠的应用程序所需的工具。
学习kratos
kratos拥有所有现代Web应用程序框架的最广泛,最全面的文档和示例库,这使得开始框架变得轻而易举。
我们还提供了现代模板。该模板应有助于减少设置现代项目所需的工作。
目标
kratos提高了您的生产力。借助出色的资源和进一步的支持,程序员可以摆脱在分布式系统和软件工程领域可能遇到的大多数问题,从而使他们只能专注于企业的发行。此外,对于每个程序员来说, kratos也是一个理想的学习仓库,用于微服务的许多方面,可以丰富他们的经验和技能。
原则
- 简单:具有简单和简单的代码的适当设计。
- 一般:涵盖业务发展的各种公用事业。
- 高效:加快企业升级的效率。
- 稳定:在生产环境中验证的基本液生物具有高可检验性,高覆盖范围以及高安全性和可靠性的特征。
- 强大的:通过高质量的基础液体来消除滥用。
- 高性能:在不安全的情况下不包括黑客优化的最佳性能。
- 可扩展性:精心设计的界面,您可以在其中扩展公用事业,例如基础液体,以满足您的进一步要求。
- 容错:抗失败,增强kratos中SRE的理解和行使,以实现更强的稳健性。
- 工具链:包括广泛的工具链,例如高速缓存,棉绒工具等。
入门
通过Docker创建kratos游乐场:
docker run -it --rm -p 8000:8000 --workdir /workspace golang
kratos /cmd/ kratos /v2@latest && kratos upgrade\”>
apt-get update && apt-get -y install protobuf-compiler export GOPROXY=https://*g*o*proxy.io,direct go install github.com/go- kratos / kratos /cmd/ kratos /v2@latest && kratos upgrade
kratos new helloworld
cd helloworld/ && go mod tidy
kratos run\”>
kratos new helloworld cd helloworld/ && go mod tidy kratos run
使用浏览器打开并访问:http:// localhost:8000/helloworld/kratos, kratos程序正在运行!
如果您需要更多,请访问kratos文档。
安全漏洞
如果您发现kratos中的安全漏洞,请通过Go- kratos @GoogleGroups.com将电子邮件发送到Tonybase。所有安全漏洞将立即解决。
社区
- 微信集团
- DISCORD组
- go- kratos .dev
贡献者
感谢您考虑为kratos框架做出贡献!可以在kratos文档中找到贡献指南。
执照
kratos框架是根据MIT许可证许可的开源软件。
致谢
以下项目对kratos的设计有特别影响。
- Go-Kit/套件是用于在GO中构建微服务的编程工具包。
- ASIM/GO-MICRO A分布式系统开发框架。
- Google/Go-Cloud是Go Cloud Development套件。
- Zeromicro/Go-Zero是一个具有许多内置工程实践的网络和RPC框架。
- Beego/Beego是一个网络框架,包括RESTFUL API,WEB应用程序和后端服务。
