grpc-java相关内容
在处理rpc服务器调用之后,我尝试使用响应中的值设置一些元数据.计划是使用服务器拦截器并覆盖 close 方法. 类似这样的内容:
..
我正在尝试使用grpc-java v1.1.2(下面的build.gradle部分),但是当我尝试为示例应用程序运行胖罐时,它抛出下面给出的异常.编译应用程序时看不到任何问题. build.gradle部件: 应用插件:"com.google.protobuf"buildscript {储存库{mavenCentral()mavenLocal()}依赖项{//升值幅度为2.12或更高.较早
..
在使用不同的验证器调用不同的rpc方法之前,我需要验证请求. 所以我实现了类似的验证器 class BarRequestValidator {公共FooServiceError validate(BarRequest请求){如果(request.bar.length> 12){返回FooServiceError.BAR_TOO_LONG;} 别的 {返回null;}}} 并在rpc方
..
Jigsaw项目的概念指南介绍了“在导出同一包的两个自动模块之间的桥梁". 1 事实上,如其github中所述,目前两个自动模块grpc.api和grpc.context都导出了io.grpc包. 2 bridge 似乎是将Jigsaw应用于具有这些库的项目的确切解决方案,但是文档并没有提供实现它的任何具体方法. 是否有用于此目的的javac命令选项?或者,是否有建议的方法可以克
..
JDK版本:1.8u77 proto3.0.3版本 我尝试将SSL合并到当前应用程序中.请找到以下我们尝试过的方法. 1)OpenSSL静态方法 我们已将io.netty.tcnative-boringssl-static,io.netty.handler和捆绑添加到com.pelco.vms.pelcotools.application.bnd和 尝试了以下代码片段
..
在此教程和根据此答案,如果元数据提供了客户端ID,则可以映射每个观察者.看来const auto clientMetadata = context->client_metadata();部分可以解决问题,但我使用的是Java,而不是C ++.是否有任何Java等价物可以在服务器端获取元数据? 解决方案 答案在某种程度上取决于如何识别客户端.如果初始请求提供了一个句柄(如用户名,但未提前注册
..
我是gRPC的新手. 我正在尝试做的是将ssl gRPC调用从客户端发送到服务器. 我的问题是以下代码中的"certFile"是客户端证书还是服务器证书? 如果它是客户端证书,在进行呼叫之前,我是否需要将服务器证书添加到我的信任列表中,还是需要将客户端证书添加到服务器的信任列表中? 感谢你的帮助. SslContext sslcontext = GrpcSslContexts.forCli
..
我正在将数据发送到grpc服务并得到错误消息作为回报: 遇到流尾中帧 这是什么意思.连接中断或其他数据发送不足.是我的客户端无法发送足够的消息数据,还是在处理过程中某些连接中断.我没有足够的信息. 如果您不知道这里出了什么问题,请告诉我,这是否意味着连接在处理期间过早关闭,或者数据馈送没有达到预期的时间,但是没有连接问题. 我正在使用Envoy代理(Lyft)中的此过滤器:
..
调用gRPC方法时偶尔会收到取消错误. 这是我的客户端代码(使用grpc-java 1.22.0库): public class MyClient { private static final Logger logger = LoggerFactory.getLogger(MyClient.class); private ManagedChannel channel;
..
当我们创建ManagedChannelBuilder并使用它来调用grpc-java服务调用时,我们可以为多少个客户提供服务?个别服务呼叫结束后,该频道是否会关闭? 假设我有一个REST接口,可以接受来自浏览器的REST调用 从这些REST服务方法中,我正在对独立的grpc服务器进行grpc客户端调用.我也可以期望客户端连接同时在[4000-5000]范围内. 我如何充分利用此managedCha
..
我有一个用Java编写的服务器和一个用PHP编写的客户端.如果出现任何问题,客户端如何从服务器捕获异常?在gRPC文档中找不到任何有关异常处理的信息. 谢谢! 解决方案 对于已处理的异常,请调用responseObserver.onError().如果传入StatusRuntimeException或StatusException(通常是通过status.asRuntimeExcep
..
如何为gRPC记录到服务器的客户端连接? 这是在连接客户端时发生的事件,我应该能够获取一些基本信息,例如IP,版本并进行记录 从192.168.1.1 AppName开始的DATETIME连接 与 gRPC/Protobuf界面版本控制 有关 解决方案 如今,IP地址和版本是基于每个RPC的,而不是在客户端连接时可用的.您可以使用serverCall.attributes(
..
我有一个服务器,该服务器为给定请求传输数据,以下是实现该功能的方法 @Override public void getChangeFeed(ChangeFeedRequest request, StreamObserver responseObserver) { long queryDate = request.getFromDate();
..
我正在寻找一种使用gRPC来实现文件下载功能的方法,但是我无法在文档中找到实现方法. 执行此操作的最佳方法是什么?我想要一个拥有文件的gRPC服务器和一个从gRPC请求某些内容的gRPC客户端. 我看过Java中的示例,但找不到解决方法.我今天才开始阅读有关gRPC的信息. 解决方案 必须将特定的message定义为数据容器,并且必须使用stream将其分块传输到客户端.
..
我有两个服务器-HelloServer和WorldServer. 两者都实现了相同的原始文件: // The greeting service definition. service GreeterService { // Sends a greeting rpc GreetWithHelloOrWorld (GreeterRequest) returns (Greet
..
im尝试通过/使用android studio 3.1.4版运行我的android应用程序,我不知道当im运行我的程序时会发生什么情况 Error: Program type already present: androidx.concurrent.futures.DirectExecutor 我尝试快速搜索其答案,但仍未找到与我的问题相关的答案. 根据我发现与类名冲突有关的那些问
..
我有两个使用gRPC进行通信的微服务.两个都是部署在ECS上的Docker应用程序.如何配置它们以使用AWS ALB?在文档中说ALB支持HTTP/2,但是我只能看到HTTP1设置. 我的应用程序在8080处具有一个gRPC端口和一个运行状况检查API.如何在ALB上进行配置? 解决方案 我不相信你可以. ALB“支持" HTTP2,但前提是它们可以接受HTTP2并在对HTTP1进行
..
我最近获取了一个表示gRPC服务的原型文件,并从中生成了Java代码.但是,所有接口都需要com.google.protobuf.BlockingRpcChannel,而且我对如何创建它一无所知.在查看示例时,我看到人们在使用io.grpc.ManagedChannel,但这是因为生成的Java代码使用了该类型.我不确定是否是因为我使用的是Protobuf的特定版本还是什么? public
..
我使用以下代码成功创建了EmbeddedAssistantStub. EmbeddedAssistantGrpc.EmbeddedAssistantStub mAssistantService = EmbeddedAssistantGrpc.newStub(channel) .withCallCredentials(More
..
我已经在tomcat容器中部署了一个Web应用程序,并使用了带有netty-tcnative-boringssl-static:jar:1.1.33.Fork26的grpc-netty(1.2.0). 当我打开调试日志时,它会告诉您"java.lang.IllegalArgumentException:无法加载任何给定的库:[netty-tcnative-linux-x86_64,netty
..