questions icon indicating copy to clipboard operation
questions copied to clipboard

请问在go micro使用go-plugins的broker后,如何使用像Ack,Unsubscribe 函数?

Open theoneLee opened this issue 5 years ago • 4 comments

如题所示,例如我使用 https://github.com/micro/go-plugins/blob/master/broker/kafka/kafka.go 插件,然后我该怎么配置手动ack,调用ack和Unsubscribe等函数呢?

我找了下官网英文文档,和micro-in-cn里的找不到相关的demo。

thx。

theoneLee avatar Mar 23 '20 08:03 theoneLee

更多的。我想使用go micro plugins上引用的"github.com/Shopify/sarama"的kafka包的特性的话,该怎么使用?

theoneLee avatar Mar 23 '20 08:03 theoneLee

Hi,broker.Subscribe会返回一个Subscriber与一个error,通常error可以忽略,Subscriber有Ack和Unsubscribe接口,如果中间件支持就直接调用即可。

其它特性非broker声明的无法使用。broker只是用这些中间件收发消息的能力,并没有全盘使用它们。

printfcoder avatar Mar 23 '20 16:03 printfcoder

建议你考虑自行扩展broker plugin 以便订制你需要的更多功能和特性。

crazybber avatar Mar 24 '20 00:03 crazybber

Hi,broker.Subscribe会返回一个Subscriber与一个error,通常error可以忽略,Subscriber有Ack和Unsubscribe接口,如果中间件支持就直接调用即可。

其它特性非broker声明的无法使用。broker只是用这些中间件收发消息的能力,并没有全盘使用它们。

可以给一个更详细的代码demo么?有可运行的demo最好了。 因为我看已有demo上的都是使用这个方式micro.RegisterSubscriber("example.topic.pubsub.1", service.Server(), new(Sub)),我有追进去大概看了下,但是没理清楚,譬如我调用了bro,_ :=broker.DefaultBroker.Subscribe("example.topic.pubsub.3", Sub)后,我该怎么把这个bro与micro.NewService的service绑定呢?另外一个就是,这个Sub是需要Handler类型的参数,与上面的micro.RegisterSubscriber所需要的参数是不一致的。我该怎么构造这个参数?

theoneLee avatar Mar 24 '20 01:03 theoneLee