java上下文_Java,gRPC和上下文传播(Java, gRPC and Context propagation)
Java,gRPC和上下文传播(Java, gRPC and Context propagation)
有没有人有客户端(存根)和服务器之间使用gRPC在java中的io.grpc.Context传播的工作示例?
我的理解是,这是不可能的,我必须使用元数据。 我对么?
在线我只找到了使用标题而不是上下文的例子。
谢谢!
Does anyone have a working example of io.grpc.Context propagation between client (stub) and server using gRPC in java?
My understanding is that it's not possible and I must use Metadata instead. Am I correct?
Online I have found only examples using Header rather than Context.
Thanks!
原文:https://stackoverflow.com/questions/49236643
更新时间:2019-12-22 15:34
最满意答案
io.grpc.Context仅用于本地传播,就像线程之间或甚至在同一线程中一样。 gRPC有目的地不会自动传播项目。 您可以使用ClientInterceptor将Context中的值复制到Metadata 。
io.grpc.Context is for local propagation only, like between threads or even on the same thread. gRPC purposefully does not propagate items from it automatically. You can use a ClientInterceptor to copy a value from the Context to the Metadata.
2018-03-13
相关问答
grpc.ServicerContext只是一个接口 ; 在您的测试代码中,您应该能够编写自己的实现并将其传递给正在测试的服务器。 确实,目前我们没有在grpc_testing提供一个grpc.ServicerContext实现,该实现已准备好供测试使用并传递给待测系统,但也不完全清楚我们可以提供一个可以简单实现且价值grpc.ServicerContext实现到大量的测试。 在测试中服务人员如何使用grpc.ServicerContext对象有一个很大的行为空间,另外还有作者编写服务器测试的另一
...
这绝对是一个网络错误。 我刚刚创建了https://github.com/netty/netty-tcnative/issues/141 ,并将着眼于减少MSVC带来的依赖项列表。 现在,尝试自己构建openssl [静态/动态]并查看它是否适合您。 This is definitely a netty-tcnative bug. I've just created https://github.com/netty/netty-tcnative/issues/141 and will be loo
...
使用gRPC流API,您一次只能写一个项目。 如果在上一个完成之前启动另一个WriteAsync()操作,则会出现异常。 您还需要在从方法处理程序返回之前完成所有写入操作(在本例中为Feed方法)。 一次只允许一次写入的原因是确保gRPC的流量控制运行良好。 在您的情况下,Rx API似乎无法确保,因此解决此问题的一种方法是使用中间缓冲区。 With the gRPC streaming API, you are only allowed to write one item at a time.
...
我认为unfoldr正是你想要的: Prelude> import Data.List(unfoldr)
Prelude Data.List> :t unfoldr
unfoldr :: (b -> Maybe (a, b)) -> b -> [a]
Prelude Data.List> let nrs = unfoldr (\n -> Just (n,n+1)) 1
Prelude Data.List> take 10 nrs
[1,2,3,4,5,6,7,8,9,10]
它的工作方式如下:
...
io.grpc.Context仅用于本地传播,就像线程之间或甚至在同一线程中一样。 gRPC有目的地不会自动传播项目。 您可以使用ClientInterceptor将Context中的值复制到Metadata 。 io.grpc.Context is for local propagation only, like between threads or even on the same thread. gRPC purposefully does not propagate items from
...
我正在读取错误的文件作为构建SslContext的证书文件。 用正确的证书文件替换错误的输入解决了问题。 I was reading the wrong file as the certificate file for building the SslContext. Replacing the incorrect input with the right certificate file fixed the issue.
提供ServerContext ,以及为您获得的每个RPC添加上下文。 它允许您调整RPC的某些方面,例如处理身份验证,或将响应中的元数据添加回客户端。 显然,您可能需要或不需要该参数,具体取决于您的需求。 我们不希望为此特别添加一个选项,因为这样会使代码和工具复杂化,所以代码生成器和函数签名会强制您始终拥有该参数。 现在这不是什么大问题,因为在C ++中,您可以特别要求编译器忽略特定实例中的参数,例如使用以下内容: Status SayHello(ServerContext* context
...
现在我懂了。 响应作为迭代器返回。 所以它应该作为迭代器处理。 Now I get it. Response is returned as an iterator. So it should be handle as iterator.
您需要ServerCall.Listener.onComplete()和ServerCall.Listener.onCancel() 。 onComplete()在ServerCall.close()成功处理后调用。 onCancel()用于任何通信错误或取消。 请注意,在应用程序调用ServerCall.close()后可以接收onCancel() ServerCall.close() 。 You want ServerCall.Listener.onComplete() and ServerC
...
我终于找到了自己的方式: https : //github.com/grpc/grpc-go/blob/master/Documentation/grpc-metadata.md 所以基本上, grpc.SetHeader() + grpc.SendHeader()和grpc.SetTrailer()完全是我想要的。 在客户端,需要将grpc.Header()和grpc.Trailer()函数传递给RPC调用,并且它们的参数是要填充的metadata.MD对象。 在客户端,定义您的接收元数据: v
...
java上下文_Java,gRPC和上下文传播(Java, gRPC and Context propagation)相关推荐
- java 模块化_Java 9 新特性 - 模块化 - Java 技术驿站-Java 技术驿站
Java 9 最大的特性就是模块化 ( Module ) 了.本章,我们就对这个 模块化 进行一些简单的讲解,包括 Java 9 模块化的概念.如何实现.如何使用等 对于 Java 9 来说,模块化 ...
- 怎么运行java虚拟机_Java代码如何运行在Java虚拟机中
我们都知道要运行Java代码就必须要有JRE,也就是Java运行时环境,JRE中包含了Java程序的必需组件,包括Java虚拟机以及Java核心类库,然而运行C++代码则不需要额外的运行时环境,只需要 ...
- java修车_JAVA小练习34——使用java描述一个车类与一个修车厂类
练习:使用java描述一个车类与一个修车厂类, 车具备的公共属性: 名字. 颜色. 轮子数. 车具备的公共 行为是跑的功能,但是跑之前必须要先检查轮子 是否够4个,如果不够4个轮子送去修车厂修理.修理 ...
- java泛型_Java核心知识 基础五 JAVA 泛型
泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型.泛型的本 质是参数化类型,也就是说所操作的数据类型被指定为一个参数.比如我们要写一个排序方法, 能够对整型数组.字符串数组甚 ...
- java光标_java怎么设置光标位置 java设置光标位置方法
java设置光标位置方法: 方法一. import Java.awt.TextField; import javax.swing.JFrame; public class InsertPosition ...
- java形状函数_java基础:10.4 Java FX之形状
JavaFX 提供了多种形状类,用于绘制文本.直线.圆.矩形.椭圆.孤.多边形以及折线. Shape 类是一个抽象基类,定义了所有形状的共同属性.这些属性有fill.stroke,strokeWidt ...
- 由于超过32位java限制_Java 32位Xmx vs java 64位Xmx
分配内存和分配地址空间有区别. Oracle JVM正在启动时分配地址空间以确保堆是连续的.这允许与堆一起使用某些优化. 如果分配失败,则Java将不会启动-如您所见.它不一定使用那么多的内存,而是前 ...
- java淘金者_Java游戏淘金者源码JAVA游戏源码下载
Java游戏淘金者源代码!外国网站的东西.部份代码配合了C语言,游戏很小,想学习的朋友值得看一看. Java游戏淘金者源码 (1 folders, 2 files, 1.38 KB, 144.41 K ...
- java 集成_java提高篇(二)-----理解java的三大特性之继承
在<Think in java>中有这样一句话:复用代码是Java众多引人注目的功能之一.但要想成为极具革命性的语言,仅仅能够复制代码并对加以改变是不够的,它还必须能够做更多的事情.在这句 ...
最新文章
- VanDyke.SecureCRT.v7.0.0.326官方英文版x86 x64 + Keymaker-ZWT
- Java线程详解(12)-有返回值的线程
- 一行js代码识别Selenium+Webdriver及其应对方案 1
- h5-plus.webview
- html 正则表达式验证金额,js金额校验,js正则表达式,包含正负,小数点后两位...
- Microsoft Project 变更项目日历的注意事项
- ajax 防止用户反复提交
- LogMeIn Pro 试用简介!
- Typora添加参考文献
- TCP/IP协议——TCP协议
- 7年沉淀之作--滴滴Logi日志服务套件
- 关于win 10 WLAN连接红叉的问题解决
- 区块链需要学习哪些东西_学习区块链需要哪些 这些基础知识要知道
- 期末考试【学堂在线答案】信息素养——学术研究的必修课(2021秋)
- 淡淡的感动——电影《听说》观后感
- Rollup【ESM打包工具】
- 从一幅图中了解开源世界
- Oracle 收缩表空间一例
- STM8L101F3P6低功耗
- C语言编程: 在BMP图片上添加图片水印
热门文章
- nginx添加nginx_mod_h264_streaming-2.2.7模块编译报错
- IOS一些常用的越狱渠道
- 使用C#开发纽曼USB来电小秘书客户端小结
- [置顶] android 与JavaScript的互相调用
- SpringAOP和AspectJ
- C# XXX.XmlSerializers”的程序集未能加载到..
- 前段之BOM ----DOM
- 快速了解layui中layer的使用
- php操作access数据库类代码
- caffe学习日记--lesson7:caffemodel可视化的两种方法