好好爱自己!

微服务学习--micro和go-micro

 

 

-----------------

原文: https://www.cnblogs.com/DjanFey/p/12172810.html

 

微服务学习(三)--micro和go-micro

一、区别

  A、go-micro:微服务开发库

  B、Micro:基于Go-micro开发的运行时工具集

二、Micro工具集组件

  A、API:将http请求转向内部应用

    1、API:将http请求映射到API接口

    2、RPC:将http请求映射到RPC服务

    3、event:将http请求广播到订阅者

    4、proxy:反向代理

    5、web:支持websocket反向代理

  B、Web:web反向代理与管理控制

  C、Proxy:代理风格的请求,支持异构系统只需要瘦客户端便可调用Micro服务

    1. 注意:与Micro API不同,Proxy只处理micro风格的RPC请求,而非http请求

  D、Cli:以命令行操控Micro服务

  E、Bot:与常见的通信软件对接,负责传递消息,远程指令操作

三、Go-micro框架模块

  

  A、service:具体实例化的服务,包含两个重要组件:Client、Server

    Client:发送RPC请求与广播消息

    Server: 接收RPC请求与消费消息

  B、Broker:异步通信组件

  C、Codec:数据编码组件

  D、Registry:服务注册组件

  E、Selector:客户端均衡器

  F、Transport:同步通信组件

四、Broker异步消息组件

  

  A、Subscribe:注册关心的主题(Topic),指定队列(queue)发送消息

  B、Publish:异步将消息推送到主题(Topic)

  C、Encoding:编码消息(默认JSON格式)

五、Registry注册组件

  

 

  A、注册类型

    1. 基于通用型注册中心,如Etcd、Consul、Zookeeper、Eureka

    2. 基于网络广播,如mDNS、Gossip

    3. 基于消息中间件,如NATS

六、selector选择器组件

  

 

  A、目前支持两种算法:随机和轮询

七、Transport同步请求组件

  A、

 

posted @   立志做一个好的程序员  阅读(1105)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
历史上的今天:
2017-09-13 【转】php ob_start()、ob_end_flush和ob_end_clean()多级缓冲
2016-09-13 angularJS 系列(三)- 自定义 Service

不断学习创作,与自己快乐相处

点击右上角即可分享
微信分享提示