我的 Golang 应用程序中需要一个还是多个 sarama.SyncProducer?
Do I need one or many sarama.SyncProducer inside my Golang app?
我是Golang新手,我需要编写将事件发布到kafka的应用程序,我找不到以下问题的答案:
- 我需要多少 sarama.SyncProducer?
- 可以跨所有应用使用一个吗?我应该有某种生产者池吗?
除非您以比发布者发布它的速度高得多的速度发布数据 (?),鉴于 sarama 发布者是 asynchronous and concurrent ,我会说您不需要超过一个出版商。所以直接回答你的问题:
- 我会选择一个,但不知道你的要求。
- 是的。我想它更有可能需要一群消费者,当然,消息发布率很高。
这取决于您的应用程序的工作方式。在大多数情况下,一个生产者就足够了。可以和很多话题互动...我让你看example
是的,非常好。您可以将生产者视为应用程序的出口。
但是,您应该使用异步生产者。如果我没记错的话,Sarama 是异步的。
SyncProducer
或 AsyncProducer
return 与 sarama.Config 中定义的代理连接的生产者结构。
- 我需要多少 sarama.SyncProducer?
You need only one producer struct with initialized configurations to set to multiple brokers.
- 可以跨所有应用使用一个吗?我要点什么吗
生产者池 ?
There is nothing like one producer can be used across all app. The only thing is it
you can connect to same broker using the same configurations. Because if there is a different app you need to create a new producer with similar configurations.
我是Golang新手,我需要编写将事件发布到kafka的应用程序,我找不到以下问题的答案:
- 我需要多少 sarama.SyncProducer?
- 可以跨所有应用使用一个吗?我应该有某种生产者池吗?
除非您以比发布者发布它的速度高得多的速度发布数据 (?),鉴于 sarama 发布者是 asynchronous and concurrent ,我会说您不需要超过一个出版商。所以直接回答你的问题:
- 我会选择一个,但不知道你的要求。
- 是的。我想它更有可能需要一群消费者,当然,消息发布率很高。
这取决于您的应用程序的工作方式。在大多数情况下,一个生产者就足够了。可以和很多话题互动...我让你看example
是的,非常好。您可以将生产者视为应用程序的出口。
但是,您应该使用异步生产者。如果我没记错的话,Sarama 是异步的。
SyncProducer
或 AsyncProducer
return 与 sarama.Config 中定义的代理连接的生产者结构。
- 我需要多少 sarama.SyncProducer?
You need only one producer struct with initialized configurations to set to multiple brokers.
- 可以跨所有应用使用一个吗?我要点什么吗 生产者池 ?
There is nothing like one producer can be used across all app. The only thing is it you can connect to same broker using the same configurations. Because if there is a different app you need to create a new producer with similar configurations.