实现功能:
相同的服务我们发布多个服务,服务名字(spring.application.name)相同,服务id(对应于Consul注册服务的spring.cloud.consul.discovery.instance-id)不同,不同的服务id对应的服务器或者ip不同。我们通过zuul访问的时候,会通过访问的路径自动路由到某台服务器上的服务去执行。这种模式将失去Consul发现服务的功能,新增服务得修改zuul-gateway-service的路由配置。
如下图的业务模式

| service | service-id(instance-id) | ip:port | uri | 通过路由的访问方式 |
| test-config | test-config-8801 | 10.9.100.100:8801 | /api/aaa/getCountNum |
localhost:8804/aaa/getCountNum |
| test-config | test-config-8805 | 10.9.100.100:8805 | /api/aaa/getCountNum |

本文介绍了如何使用Consul和Zuul实现API网关服务路由,通过路径模式将请求自动转发到不同服务器上运行的相同服务实例。详细内容包括Zuul的路由配置,Consul的健康检查,以及启动类和配置文件的设置。测试结果显示,通过特定路径的请求将在不同IP地址的服务器上执行相应操作。
最低0.47元/天 解锁文章
2145

被折叠的 条评论
为什么被折叠?



