【问题标题】:grpc-node: How to do Intra-service requests & are there any examples of intra-service requests?grpc-node:如何进行服务内请求&有没有服务内请求的例子?
【发布时间】:2020-11-10 06:47:31
【问题描述】:

假设您有 2 项服务:图书和客户。假设客户想要收藏一本书。因此客户可能会向下一个服务发出 gRPC 请求。如何准确地从一项服务向另一项服务发起 RPC 调用。

这是网络上唯一的例子。似乎表明了这一点,但问题是他们使用 golang 来进行服务内请求(作为客户端),并使用 grpc-node 作为服务器。是否有 grpc-node 从另一个服务对 grpc-node 服务器进行客户端 RPC 调用的示例?

结帐服务文件: https://github.com/GoogleCloudPlatform/microservices-demo/blob/master/src/checkoutservice/main.go 原型文件: https://github.com/GoogleCloudPlatform/microservices-demo/blob/master/pb/demo.proto

目前,我假设在一个共享的 proto 文件中将有 2 个服务,并且在客户端文件中,客户端将调用另一个服务的组件的 RPC 调用。

【问题讨论】:

    标签: microservices protocol-buffers grpc protoc grpc-node


    【解决方案1】:

    你想要的IIUC:客户端服务1服务2,每个服务都是使用gRPC实现的。

    实施将是:

    • 客户端服务1
    • 服务1客户端 (!) 服务2

    也就是说,服务1 的实现必须充当 gRPC 服务器 gRPC 客户端(对服务2 进行调用)

    gRPC 的“魔力”的一部分是允许您调用远程函数|方法,就好像该函数|方法是在本地实现的一样。但是,就是这样。将这些方法调用以菊花链形式连接起来并没有什么神奇之处。

    所以,如果函数是用其他函数来实现的,那就是 gRPC 客户端-服务器海龟。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-03-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-27
      • 2017-04-02
      相关资源
      最近更新 更多