介绍

此专栏文档转自taadis编写的https://learnku.com/docs/go-micro/2.x

Micro 解决了在云内外构建分布式系统的关键要求. 它利用微服务体系结构模式, 并提供一组作为平台构建基块的服务. Micro 处理分布式系统的复杂性, 并提供更简单的可编程抽象.

技术在不断发展. 基础结构堆栈总是在变化. Micro 是一个平台, 它使用可插拔的基础和强定义的 api 来解决这些问题. 可插入任何堆栈或云.

在推特上关注我们, 或加入 Slack 社区.

特性

运行时由以下功能组成:

  • api: api 网关. 使用服务发现具有动态请求路由的单个入口点. API 网关允许您在后端构建可扩展的微服务体系结构, 并在前端合并公共 api. micro api 通过发现和可插拔处理程序提供强大的路由, 为 http, grpc, Websocket, 发布事件等提供服务.
  • broker: 允许异步消息的消息代理. 微服务是事件驱动的体系结构, 应该作为一等公民提供消息传递. 通知其他服务的事件, 而无需担心响应.
  • network: 通过微网络服务构建多云网络. 只需跨任何环境连接网络服务, 创建单个平面网络即可全局路由. Micro 的网络根据每个数据中心中的本地注册表动态构建路由, 确保根据本地设置路由查询.
  • new: 服务模板生成器. 创建新的服务模板以快速入门. Micro 提供用于编写微服务的预定义模板. 始终以相同的方式启动, 构建相同的服务以提高工作效率.
  • proxy: 建立在 Go Micro 上的透明服务代理. 将服务发现, 负载平衡, 容错, 消息编码, 中间件, 监视等卸载到单个位置. 独立运行它或与服务一起运行.
  • registry: 注册表提供服务发现以查找其他服务, 存储功能丰富的元数据和终结点信息. 它是一个服务资源管理器, 允许您在运行时集中和动态地存储此信息.
  • store: 有状态是任何系统的必然需求. 我们提供密钥值存储, 提供简单的状态存储, 可在服务之间共享或长期卸载m 以保持微服务无状态和水平可扩展.
  • web: Web 仪表板允许您浏览服务, 描述其终结点, 请求和响应格式, 甚至直接查询它们. 仪表板还包括内置 CLI 的体验, 适用于希望动态进入终端的开发人员.

此外, Micro 还提供了 Go 开发框架:

  • go-micro: 利用强大的 Go Micro 框架轻松, 快速地开发微服务. Go Micro 抽象了分布式系统的复杂性, 并提供了更简单的抽象来构建高度可扩展的微服务.

开始

  • 框架 - 使用 go-micro 框架开始编写服务.
  • 运行时 - 使用 micro 运行时管理您的服务.
  • 网络 - 在网络上 公开共享和托管您的服务.
  • 示例 - 通过实际代码 示例 示例来学习
  • 社区 - 加入社区并在 slack 开始协作
文档更新时间: 2020-06-02 15:49   作者:kuteng