首页 > 解决方案 > 如何使用 protobuf 二进制文件过滤 PUB/SUB ( ZeroMQ )?

问题描述

我使用 Go、ZeroMQ 和 protobuf 来编写微服务。

带有PUB/SUB原型的 ZeroMQ。(zmq4Go 中的 lib)。如何在SUB带有二进制 protobuf 消息的消息中使用过滤器?

例如我的原型消息:

语法 = "proto3";

message UserMessage {
    string userId = 1;
    string msg    = 2;
}

我想过滤SUB值为以下的客户端的消息userId

listener.SetSubscribe("42") // <-string not working.

标签: goprotocol-bufferszeromq

解决方案


我知道了:

listener.SetSubscribe( string( []byte{ 10, 2 } ) + "42" )

推荐阅读