微服务之间如何通信(请求/响应)

时间:2021-03-22 14:39:47

标签: microservices

有人可以帮助解决以下问题吗?

我有两个微服务 A 和 B,其中服务 A 向 B 发送请求,B 从数据库中获取数据并将响应发送回 A,根据接收到的数据,我执行的操作很少。 目前我用的是Http客户端调用,不想用http请求?我该如何继续?

谢谢, 瑞瓦提

1 个答案:

答案 0 :(得分:0)

如果您想使用 HTTP 在 2 个服务之间进行通信,您需要一个 HTTP 客户端,允许您指定与您的请求相关的参数。 Java 示例(更多详细信息 here):

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
     .uri(URI.create("<YOUR_ENDPOINT>"))
     .build();
client.sendAsync(request, BodyHandlers.ofString())
     .thenApply(HttpResponse::body)
     .thenAccept(System.out::println)
     .join();

如果你不想使用 HTTP 1.1,你可以看看 gRPC,网上有很多关于如何使用它们的例子