当前位置: 首页 > 知识库问答 >
问题:

为GRPC使用备用连接通道/传输

韩照
2023-03-14

我目前有一个依赖于通过安全套接字传输的JSON的原始RPC设置,但我想切换到gRPC。不幸的是,我还需要访问windows上的AF\U UNIX(Microsoft最近开始支持,但gRPC尚未实现)。

由于我有一个现有的工作连接(使用另一个库进行管理),我的首选方法是将其与GRPC结合使用来发送/接收命令,而不是JSON解析,但我正在努力确定实现这一点的最佳方法。

我已经看到将自定义传输插入gRPC,但这个问题在以下方面有所不同(以及我希望得到更近期的答案)

  1. 我希望避免对gRPC的核心进行更改。如果可能的话,我更愿意从我的库中扩展它,但这里的答案意味着向gRPC添加一个新的传输。如果我确实需要在传输级别执行此操作,是否有机制在构建核心后向gRPC注册

有人用gRPC解决过类似的问题吗?

共有1个答案

林弘文
2023-03-14

我可能已经找到了自己的答案。我似乎过于关注gRPC,而Protobuf的服务定义组件并不依赖于此。

我如何使用ZeroMQ编写我自己的协议缓冲区RPC实现与我的用例非常相似,https://developers.google.com/protocol-buffers/docs/proto#services似乎解决了我的问题(这也解释了为什么我似乎一直在混合不同类型的“通道”

我欢迎任何改进/建议,并希望将来有同样困惑的人可以在搜索中找到这一点。

 类似资料:
  • 我是Grpc电话的新手。 目前,我正在使用Grpc。核心创建“通道”的新实例。请参阅下面的代码。 现在,我想在创建通道时添加一个连接超时。Grpc.Core有可能吗? 我知道可以在使用“Grpc.Net.Client.”时添加选项,但是,它只适用于. Net Core 2.1和我的项目不针对该框架。https://docs.microsoft.com/en-us/aspnet/core/grpc/

  • 客户端通道在服务器入站通道激活方法中初始化。我可以看到pcap已经完成了三次握手(253是本地主机,15是远程主机) 但是当写入客户端通道时,它抛出 java.nio.channels。NotYetConnectedException:io.netty.channel.AbstractChannel$AbstractUnsafe处为null。flush0()(未知源) 根据我的理解,客户端通道应该

  • 服务器: 客户: 服务器正在使用https://github.com/LogNet/grpc-spring-boot-starter 客户端的netty配置(值得一提的是,grpc服务器前面没有任何代理): 一旦我启动客户端订阅(即调用订阅方法来流式处理事件),它将花费多达4分钟的时间,直到失败,并出现异常。通常是3-4分钟。我确实尝试设置了所有可能的netty配置属性,但没有任何帮助。这是日志。

  • 问题内容: 我对SCP协议和JSch很陌生。我必须通过SCP将文件从远程设备传输到Android。服务器端开发人员拒绝透露有关设备的任何信息,除了文件位置和可用于通过SCP访问设备的根帐户。 这是我尝试的步骤。 确认使用JSch,我的Android客户端可以与服务器建立连接。[完成] 确认使用JSch和对象,我可以发送命令并读取其输出。[完成] 确认使用JSch和对象可以从设备传输文件。[失败]

  • 简介 TensorFlow serving提供了通用的gRPC接口,我们也考虑实现通用的gRPC客户端,由于用户模型的输入数据不同,因此我们通过JSON定义数据,并且集成到Xiaomi Cloud-ML中。 使用Xiaomi Cloud-ML 安装cloudml命令工具后,我们可以创建模型服务,请求的数据保存到本地JSON文件中。 { "keys_dtype": "int32", "key

  • 长连接通道 SDK 概要 初始化 使用方式 业务请求响应模型 订阅 Topic 取消订阅 Topic Publish 数据 注册下行 Listener 混淆配置 长连接通道 SDK 更新时间:2018-03-26 19:22:29 概要 长连接通道SDK,提供 IoT 业务协议封装的云端数据下行能力;为 app 提供订阅、发布消息的能力, 和支持请求响应模型。 依赖SDK 概述 API 通道 提供