gRPC
文章平均质量分 58
fananchong2
这个作者很懒,什么都没留下…
展开
-
go grpc-go 连接变动,导致全服 gRPC 重连 BUG 排查
在构建 resolver.Address 时,字段 Attributes 添加了 NodeNumber 属性;addrConn.tryUpdateAddrs 内用的是 DeepEqual ,这里 Addresses 字段又是起作用的。项目中遇到一个问题,每当有节点变更时,整个 gRPC 网络连接会重建。即,不考虑属性字段内容,即只要 ip port 一样就是同个连接。加了 Address.Equal 统一了 Address。操作的定义(说明官方也发现了这个问题 = =|)因此,项目中的代码还是写错的。原创 2023-12-20 17:59:21 · 440 阅读 · 0 评论 -
gRPC C++ 异步双向流例子 -支持多线程与连续发送消息
grpc_async_bidirectional_stream_examplegithub 地址:https://github.com/fananchong/grpc_async_bidirectional_stream_example例子基于线上稳定、高效跑了 1 年以上的 gRPC C++ 库网络框架最开始作为测试,实验性放到 github 抓虫使用的是异步双向流简化编码,在异步双向流基础上,引入 echo 型编码设计模式类似如下:实现对应类方法:bool Msg_TestService原创 2022-05-18 22:25:50 · 3104 阅读 · 18 评论 -
grpc c++ 异步双向流与`pure virtual method called`
grpc c++grpc c++ 版本用的人相对少些实际使用下,确实给 c++ 网络编程带来便利不少读者对 grpc c++ 缺乏深入了解,以为这是一个同步的库,效率会很低且官方也没有提供非常易懂的完全高效异步的例子,导致给使用者造成困惑与误解笔者在编写异步双向流的 grpc 服务器中,从官方例子与 issue 中,终于写出了完美健壮的例子特记一二主要问题编写异步双向流服务器,会遇到以下问题:官方只提供了一元异步的例子官方部分例子过于草率,应答处理直接开线程,可能会吓走大批用户客户端原创 2021-09-01 23:09:10 · 1041 阅读 · 0 评论 -
gRPC etcd-cpp-apiv3 windows 下编译
介绍gRPC 编译依赖 : openssletcd-cpp-apiv3 编译依赖: openssl grpc boost cpprestsdkc++ 最不友好的地方,就是编译,非常耗时。一两天的时间,就花在编译上!编译 openssl编译工具说明perlhttps://strawberryperl.com/download/5.32.1.1/strawberry-perl-5.32.1.1-64bit.msinmakeVisual Studio 2019编译过程原创 2021-06-27 20:02:21 · 614 阅读 · 2 评论 -
gRPC Cpp 编译(备忘)
gRPCgithub 地址: https://github.com/grpc/grpc本文记录 gRPC Cpp 的编译过程官方编译文档: https://github.com/grpc/grpc/blob/master/BUILDING.mdCMake这里是 CMake 编译要求 CMake 版本: >= 3.13一般 CentOS 系统可能需要升级 CMake以下命令:wget https://cmake.org/files/v3.20/cmake-3.20.1.zipunzi原创 2021-05-30 22:23:13 · 507 阅读 · 2 评论 -
gRPC 异步双向流服务器代码例子
gRPC Cpp 例子官方例子: https://github.com/grpc/grpc/tree/master/examples/cpp特别是 https://github.com/grpc/grpc/blob/master/examples/cpp/helloworld/greeter_async_server.cc ,给出的是一元异步服务器代码例子实际上,官方没有给出异步双向流服务器代码例子因此,必须自己探索下异步双向流服务器代码例子异步双向流, Async bidirectional原创 2021-05-30 22:40:15 · 1705 阅读 · 3 评论