Dawn's Blogs

分享技术 记录成长

0%

go-micro基础 (2) go-micro基本介绍

Micro

Micro 是用来构建和管理分布式程序的系统,组成如下:

  • Runtime(运行时):用来管理配置、认证、网络等。

  • Framework(程序开发框架):用来编写微服务。

  • Clients(多语言客户端)支持多语音访问服务端。

Runtime

Runtime(运行时)是工具集,组成:

  • api:api 网关,把微服务组合起来,形成单一的入口方便调用。
  • broker:允许处理异步消息的代理。
  • network:通过微网络服务构建多云网络。
  • new:服务模板生成器。
  • proxy:建立在 Go Micro 上的透明服务代理。
  • registry:一个服务资源管理器,通过注册的方式提供服务发现以及查找服务。
  • store:简单的状态存储。
  • web:Web 仪表盘,通过 Web 仪表盘的方式浏览服务。

Framework(go-micro)

go-micro 是 Micro 的一种 Framework,是对分布式系统的高度抽象、提供分布式系统开发的核心库、可插拔的架构,按需使用。组件如下:

  • 注册(Registry):提供了服务发现机制。
  • 选择器(Selector):能够实现负载均衡。
  • 传输(Transport):服务和服务之间的通信。
  • Broker:提供异步消息的消息发布/订阅接口。
  • 编码(Codec):消息传输的编码与解码。
  • Server、Client:服务的提供者和使用者。

go-micro 的通信如下:

  • Server 通过 Registry 将服务注册到服务注册中心,Client 通过 Selector 从服务注册中心进行服务发现。
  • Client 通过 Broker 发布消息到消息中间件中,Server 通过 Broker 从消息中间件中读取订阅消息。

1663591380963