micro-proxy/

directory
v0.0.0-...-908d554 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 2, 2020 License: Apache-2.0

README

Micro Proxy

micro proxy的作用是提供访问Go-Micro服务代理,它与Micro API不一样的地方在于,API将Go-Micro服务暴露为Http接口,而Proxy的职责则是为不同网络之间访问Go-Micro服务提供入口。

其它示例

gRPC+Node+Proxy

代理Go-Micro服务

我们使用两种不同的注册机制来模拟不同的服务集群,客户端我们使用MDNS注册,而服务端我们使用Consul注册,这样,两个服务集群之间就是不通的,因为彼此不在一样注册服务下,便不知道对方的地址。为了简化,我们也只在两个集群之中各建立一个服务,见下图:

我们假设您已经启动Consul并默认为本地启动。

启动服务
  1. 启动Micro Proxy
micro --registry=consul proxy
  1. 注册在Consul集群的服务:
cd ./consul
go run server.go --registry=consul
  1. 启动注册在MDNS集群的客户端
cd mdns
MICRO_PROXY_ADDRESS=localhost:8081 go run client.go

我们需要告诉客户端通过Proxy代理请求服务,因此,需要声明Proxy:MICRO_PROXY_ADDRESS=localhost:8081。8081是Proxy的默认端口,可以通过--address=:9090修改。

随后我们可以看到客户端打印了响应结果:

你好,Micro中国

代理其它类型的服务

Micro Proxy目前提供三种协议的代理:mucp(默认)、grpc、http。它们能代理各自类型的Micro服务。

  1. GRPC
micro --registry=consul proxy --protocol=grpc

通过指定--protocol=grpc修改。

集群

我们上面的用法是需要调用方声明具体的地址来找到Proxy的,如果我们的Proxy是集群,那要如何处理呢?coming soon

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL