• 处理张量流服务器响应

    我正在使用tensorflow服务器来推断tensorflow对象检测api。我需要知道如何处理服务器返回的响应。服务器返回张量。我需要做这样的事情: res = stub.Predict(request, timeout).outputs[tensor_name] arr = tf.make_ndarray(res) But I don't want to load the whole tensorflow library for this. I'm using Python files gener...
  • Golang中的GRPC连接管理

    我是GRPC的新手,并且想要确保我正确地使用golang进行了连接管理。我不想为每个呼叫都创建一个新的连接,但是我也不想在扩展时创建瓶颈。 我所做的是在init函数中创建单个连接: var userConn *grpc.ClientConn var userServiceName string func init() { userServiceName := os.Getenv("USER_SERVICE_URL") if userServiceName == "" { u...
  • grpc服务器不会释放内存,是否存在内存泄漏?

    我用c ++构建了一个grpc服务器,发现在几次请求后它的内存不会释放。内存首先增加,如果我继续发送请求,内存将保持在峰值。停止发送请求后,将不会释放内存或释放很少的内存。我的代码有什么问题,应该尽快释放内存或将其保留为catch缓冲区? class BaseCallData { public: BaseCallData(XFRProcessor *processor) : processor_(processor), status_(CallStatus::CREATE) {} vi...
  • 如何不冻结UI,并等待响应?

    从早上开始我一直在尝试,但是我没有达到我想要的。 我尝试了DispatchQueue.main.async和完成块,但UI中的“ Submit”按钮仍然冻结,等待从服务器返回数据。这是我的代码: func createData(request:Crudpb_CreateRequest, with completion: @escaping (String) -> Void) throws { DispatchQueue.main.async { self.response = try...
  • 服务器不可用时如何迅速处理错误?

    当服务器不可用或已关闭时,如何处理此服务器调用的错误? func createData(request:Crudpb_CreateRequest, with completion: @escaping (String) -> Void) throws { DispatchQueue.main.async { self.response = try! self.client.create(request) // <---- How to handle error for this se...
  • GRPC消息结构

    我正在将旧版应用程序(微服务和整体软件的一部分)迁移到使用GRPC的过程中。整个代码库当前位于GO中。 我已经开始对消息建模,它们看起来与我在应用程序代码中使用的结构非常相似。我两次定义相同的对象似乎很奇怪,但是将消息对象用作核心结构也很奇怪。似乎我将有大量内存密集型数据封送处理。以下是消息和结构的示例,以及它们之间的相似程度。 在决定如何对邮件进行建模方面,是否有任何建议/最佳做法?它们应该与我的核心结构保持一致吗?我是否应该不在乎从Golang结构到消息的所有编组? 如果我问的是一个基本问题,请原谅我,...
  • DispatchQueue.main.async外部的变量为空

    自几天以来,我一直试图解决此错误,但我不明白为什么我会首先收到此错误。 请帮忙... func createData(request:Crudpb_CreateRequest) -> String { DispatchQueue.main.async { self.response = try! self.client.create(request) print("This is response 1: " + self.response.result) // <-...
  • 找不到Protobuf时间戳记

    对GRPC来说相对较新,并且在我的原型文件中出现一个我似乎无法理解的错误。我想使用“ google.protobuf.Timestamp”在消息中发送时间。我似乎无法导入。我究竟做错了什么? syntax = "proto3"; import "google/protobuf/timestamp.proto"; service ProfileService { rpc ConstructProfileStructFromUser (ConstructProfile...
  • 通过GRPC或WCF使用ProtoBuf时,是否需要标记[可序列化]属性?

    在代码的一部分中,我正在使用Google Protobuf使用WCF,而在另一部分中,我正在使用GRPC(涉及Protobuf)。 是否需要标记两个对象的可序列化属性,而不是要序列化的属性? 下面我提供两个应用示例 示例1:我想使用WCF和Google Protobuf序列化Name1 [Serializable] [DataContract] [ProtoContract] public struct Name1 示例2:我想使用GRPC序列化Name2 [Se...
  • 找不到有关GRPC通道选项的文档

    I'm looking for the documentation for the channel options I can pass when creating a gRPC channel. For example, I know there's one called grpc.max_receive_message_length. My problem is that I cannot find a complete list of those or a description of what th...
  • 无缝衔接 gRPC 与 dubbo-go

    作者 |邓明最近我们 dubbo-go 社区里面,呼声很大的一个 feature 就是对 gRPC 的支持。今天我就给大家分析一下大佬是怎么连接 dubbo-go 和 gRPC 。gRPC先来简单介绍一下 gRPC 。因而 gRPC 天然就支持多语言。这几年,它几乎成为了跨语言 RPC 框架的标准实现方式了,很多优秀的rpc框架,如 Spring Cloud 和 dubbo ,都支持 gRPC 。还剩下一个问题,就是我们的解决方案怎么和 dubbo-go 结合起来呢?设计我们先来看一下 dubbo-go 的整体设计,思考一下,如果我们要做 gRPC 的适配,应该是在哪个层次上做适配。而从 cluster 往上,显然 gRPC 没有涉及。这个 gRPC protocol 大体上相当于一个适配器,将底层的 gRPC 的实现和我们自身的 dubbo-go 连接在一起。
  • 从源代码构建gRPC C ++

    I am trying to build gRPC c++ from source from Build gRPC C++ I have already installed bazel. Though when I tried to build I am seeing following error. $ bazel build :all Starting local Bazel server and connecting to it... ERROR: /home/santosh/.cache/baze...
公众号
码农俱乐部
关注公众号订阅更多技术干货!