spring-cloud分布式部署,带来的互访问题

现在大家都在用spring-cloud,用的比较多的Eureka,Nacos如果业务都部署在一台服务器上,容器间的访问自然没有问题,但如果业务比较多,一台服务器承受不了,需要部署在别的机器上,那该怎么实现他们之间的互访呢。

业务场景:

服务器A 部署了nacos,gateway,业务a

ip地址和端口分别是:

192.168.0.220(宿主机地址)172.30.2.10:8848,172.30.2.20:8000,172.30.2.30:8999(容器组内地址)

服务器B 部署了业务b

ip地址分别是192.168.0.221(宿主机地址),172.30.2.40:8998(容器组内地址)

怎么来实现业务a访问业务b呢:

其实很简单:

业务a的配置

配置nas注册中心宿主机的ip192.168.0.220,及业务a部署的宿主机ip,因部署在同一台机上所以也是192.168.0.220主要配置如下

cloud:
  nacos:
    discovery:
      server-addr: 192.168.0.220:8848
               ip: 192.168.0.220

业务b的配置

cloud:  
  nacos:
    discovery:
      server-addr: 192.168.0.220:8848
               ip: 192.168.0.221

其中:

server-addr:192.168.0.220:8848  nacos注册中心部署的所在的宿主机ip地址。

ip:192.168.0.220 业务a部署的宿主机ip地址

ip:192.168.0.221 业务b部署的宿主机ip地址

这样微服务a,b就可以注册到注册中心,并通过网关也可以互访了。

业务a访问业务b接口:curl http://172.30.2.20:8000/业务b/test,由网关转发实际访问的是http://192.168.0.221:8998/test

当然注册中心nacos,和部署的服务的主机IP也可以配置成公网IP,这样就可以通过公网ip,如果配置了域名,也可以通过域名访问

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值