加载中...
Kratos 是哔哩哔哩开源的 Go 语言微服务框架,提供从 API 定义、服务治理到可观测性的一整套工具链,倡导以 Protobuf 为中心的开发范式,面向云原生环境构建高可用微服务。

| 类型 | 微服务框架 |
| 语言 | Go |
| 开源方 | 哔哩哔哩 |
| 核心 | Protobuf、gRPC/HTTP |
Kratos 是由哔哩哔哩(Bilibili)开源的 Go 语言微服务框架,取名自游戏角色,寓意坚韧强大。它为构建云原生微服务提供了一整套约定、工具与组件,覆盖接口定义、服务治理、错误处理与可观测性等环节。
Kratos 沉淀自哔哩哔哩内部大规模微服务实践,目标是帮助团队高效构建可扩展、易维护的服务。它倡导以 Protobuf 为中心的开发方式:先用 Protobuf 定义 API 与错误,再据此生成代码,从而保证接口契约的一致性,并同时支持 gRPC 与 HTTP 两种传输协议。
Kratos 适用于在 Kubernetes 等云原生环境中构建 Go 微服务的团队,尤其是需要 gRPC 与 HTTP 双协议、重视服务治理与可观测性的中大型系统。对希望参考成熟大厂实践、快速搭建规范化微服务架构的团队,它提供了良好起点。
问:Kratos 与 go-zero 有何区别?答:两者都是国产 Go 微服务框架。Kratos 强调以 Protobuf 为中心和组件可插拔的灵活性;go-zero 更强调一体化与代码生成带来的开箱即用。选型可依据团队对灵活性与约定强度的偏好。
问:必须使用 gRPC 吗?答:不必。Kratos 支持仅以 HTTP 对外提供服务,但其设计充分利用了 Protobuf 与 gRPC 的优势,采用它们能更好地发挥框架能力。

| 类型 | 微服务框架 |
| 语言 | Go |
| 开源方 | 哔哩哔哩 |
| 核心 | Protobuf、gRPC/HTTP |
登录 后参与讨论
暂无讨论,来发表第一条评论吧