本地测试时微服务如何路由
Posted
技术标签:
【中文标题】本地测试时微服务如何路由【英文标题】:How are microservices routed when tested locally 【发布时间】:2021-03-13 13:01:28 【问题描述】:当我们谈论基于微服务的系统时,路由是一个重要方面,因为请求将被引导到正确的服务。在生产环境中部署服务时,会使用负载均衡器、API 网关等组件。
但是当我在本地开发和测试微服务时,比如使用 Spring boot,我不使用任何此类组件,例如负载均衡器、API 网关等。那么路由需要注意什么?
【问题讨论】:
【参考方案1】:这个概念对于本地或远程保持不变。在任何一种环境中,您都必须告诉服务 a 与服务 b 进行通信。该操作是通过服务发现建立的。您成为客户端并像其他应用程序服务一样将自己注册到服务发现,并通过 Feign 或 Ribbon 调用任何您选择的调用。 在本地,您还可以通过 Feign 为想要通信的服务硬编码主机和端口,但这不是服务通信的理想方式。
对于本地你也可以使用ResponseEntity在服务之间进行通信例如:-
ResponseEntity<ServiceA> responseEntity = new RestTemplate().getForEntity
("http://localhost:8000/ServiceB/from/from/to/to",ServiceB.class, parametervalues);
【讨论】:
以上是关于本地测试时微服务如何路由的主要内容,如果未能解决你的问题,请参考以下文章
使用NodeJs作为微信公众号后台服务器 使用node回复公众号消息 node验证公众号tonken node微信公众号开发