华为开源微服务框架 ServiceComb 使用体验

本贴最后更新于 2405 天前,其中的信息可能已经事过景迁

寻找 go 版本的微服务框架发现华为开源的 ServiceComb,体验了一下,确实可以快速开发,开箱即用。开源代码不包含动态配置中心的功能。需要自己实现,也可以直接接入华为云的微服务。

微服务引擎_CSE_微服务_应用管理与运维-华为云

语言支持:

go/java 其它语言可以通过 mesher 作为 agent 实现

协议:

默认支持 http、Highway RPC(Protobuf)两种协议。

配置:

支持 CSE 配置中心、本地文件、环境变量及命令行等方式管理
配置中心无开源实现
本地文件,可热加载

发现注册:

etcd 存储
ServiceCenter 注册中心,通过 http 接口实现注册发现功能。

https://github.com/apache/incubator-servicecomb-service-center

请求处理:

Consumer

ratelimiter-consumer 客户端限流。

bizkeeper-consumer 熔断降级。

router 路由策略。

loadbalance 负载均衡。

tracing-consumer 客户端调用链追踪。

transport 如果你使用自定义处理链配置,那么结尾处必须加入这个 Handler。

Provider

ratelimiter-provider 服务端限流。

tracing-provider 服务端调用链追踪。

bizkeeper-provider 服务端熔断。

注:可自定义 handler 增加额外处理逻辑

统计:

metrics 支持,可同步至 prometheus

开启上报,通过 cse 查看

  • golang

    Go 语言是 Google 推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发 Go,是因为过去 10 多年间软件开发的难度令人沮丧。Go 是谷歌 2009 发布的第二款编程语言。

    497 引用 • 1387 回帖 • 283 关注
  • 微服务

    微服务架构是一种架构模式,它提倡将单一应用划分成一组小的服务。服务之间互相协调,互相配合,为用户提供最终价值。每个服务运行在独立的进程中。服务于服务之间才用轻量级的通信机制互相沟通。每个服务都围绕着具体业务构建,能够被独立的部署。

    96 引用 • 155 回帖 • 2 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...