Tag: grpc

如何访问我定义的java grpc服务的请求元数据?

对于某些背景,我试图使用grpc auth来为我定义的某些服务提供安全性。 让我们看看我是否可以问这是一种有意义的方式。 对于我的python代码,实现服务器端代码非常容易。 class TestServiceServer(service_pb2.TestServiceServer): def TestHello(self, request, context): ## credential metadata for the incoming request metadata = context.invocation_metadata() ## authenticate the user using the metadata 所以,正如你所知,我能够很容易地从“上下文”中获取元数据。 对我来说更难的是在java中做同样的事情。 public class TestImpl extends TestServiceGrpc.TestServiceImplBase { @Override public void testHello(TestRequest req, StreamObserver responseObserver) { // How do I get access to similar request metadata here? // […]

用于gRPC / protobuf的Java IDL(Protocl缓冲区)

是否可以使用Java定义Protocol Buffers? 那不是 service Greeter { rpc SayHello (HelloRequest) returns (HelloReply) {} } 我想拥有 public interface Greeter { @Grpc HelloReply sayHello (HelloRequest req); } @GrpcMessage() public class HelloReply{ @GrpcField(1) string name; } 这是注释,就像我的POJO上的Hibernate / JPA,而不是生成的代码堆。 我只能找到Protocol Buffers Dynamic Sc​​hema https://github.com/os72/protobuf-dynamic

Gradle无法检测osdetector插件

我在使用gradle的Java GRPC项目中使用OpenSSL。 我阅读了文档 ,其中提到我们应该按照此链接中的说明进行安全设置。 我在build.gradle文件中包含了osdetector插件。 但是当我构建项目时,gradle无法解析osdetector插件并抛出错误 > Failed to apply plugin [id ‘com.google.protobuf’] > Plugin with id ‘osdetector’ not found. 我的gradle文件如下: def neo4jVersion = “2.3.3” apply plugin: ‘application’ apply plugin: ‘java’ apply plugin: ‘com.google.protobuf’ apply plugin: ‘idea’ apply plugin: ‘com.google.osdetector’ buildscript { repositories { mavenCentral() } dependencies { classpath ‘com.google.protobuf:protobuf-gradle-plugin:0.7.3’ classpath ‘com.google.gradle:osdetector-gradle-plugin:1.4.0’ } } protobuf […]

java.lang.IllegalArgumentException:尚未正确配置Jetty ALPN / NPN

获取java.lang.IllegalArgumentException: Jetty ALPN/NPN has not been properly configured ,同时使用gRPC(google pub/sub)发布/使用来自Kafka的消息。

gRPC中的通道/存根是否是线程安全的

当使用Java中的gRPC时,我可以缓存存根(客户端)并在multithreading环境中调用它们,还是通道线程安全且可以安全地缓存? 如果网络中断,我应该重新创建频道还是足够聪明才能重新连接? 我在http://www.grpc.io/docs/上找不到相关信息 谢谢