美文网首页
Micro 学习笔记

Micro 学习笔记

作者: WuCh1k1n | 来源:发表于2020-04-25 17:49 被阅读0次

    Micro 是一个开源的微服务生态系统。目标是简化分布式系统开发,它提供了用于服务发现,客户端负载平衡,编码,同步和异步通信库。

    架构

    Micro 主要由 Go-Micro微服务工具包 两个部分构成。

    architecture.png

    Go-Micro

    Go-Micro 是 Micro 的核心,是一个独立的基于 gRPC 的微服务框架。


    Go-micro.png

    Client

    Client 提供了一种发出 RPC 请求的方法。它还提供重试,超时,使用上下文等。

    Server

    Server 是构建正在运行的微服务的接口。它提供了一种接收 RPC 请求的方法。

    Registry

    Registry 是一个插件式的服务发现库,来查找正在运行的服务。可以选择基于 consul,etcd,内存和 kubernetes。

    Selector

    Selector 通过选择提供负载均衡机制。当 Client 向 Server 发出请求时,它将首先查询 Registry。这通常会返回一个表示服务的正在运行的节点列表。选择器将选择这些节点中的一个用于接收请求。多次调用 Selector 将触发平衡算法(循环法,随机哈希,黑名单)

    Broker

    Broker 是提供发布/订阅时间功能的插件。目前的实现包括nats,rabbitmq 和 http(用于开发)。

    Transport

    传输是通过点对点传输消息的插件。


    微服务工具包

    工具包的工具都是插件式的,作为辅助微服务开发的补充。

    API

    API网关是微服务的单一入口,可以用作反向代理和将 HTTP 请求转换为 RPC。


    API.png

    Web UI

    用于Micro Web应用程序的仪表板和反向代理。


    Web.png

    Sidecar

    一种对语言透明的RPC代理,提供了一种将其他语言应用程序集成到 Micro 世界的方法。


    Sidecar.png

    Bot

    Hubot 风格的 bot,位于您的微服务平台中,可以通过 Slack,HipChat,XMPP等进行交互。它通过消息传递提供 CLI 的功能。可以添加其他命令来自动执行常见的操作任务。


    Bot.png

    CLI

    一个直接的命令行界面来与你的微服务进行交互。它还使您可以利用 Sidecar 作为代理,从而不直接连接到服务注册表。

    相关文章

      网友评论

          本文标题:Micro 学习笔记

          本文链接:https://www.haomeiwen.com/subject/wkvkwhtx.html