当前位置: 首页 > 知识库问答 >
问题:

Spring-Boot Apache Kafka中ProducerConfigs的默认值

萧和同
2023-03-14

我有一个Spring Boot项目,并运行与Kafka正在实施。

我配置了一个生成器,并发送了一条主题为“demo”的消息。
但我没有设置任何属性,如
bootstrap.servers=[localhost:9092]
value.serializer=class org.apache.kafka.common.serialization.StringSerializer
,这些属性通常在运行kafka project-producer时设置。
我的项目成功运行,我能够使用该消息

我的问题是Spring-Boot如何知道这些ProducerConfig属性??有缺省值吗

我在原木上也看到了

acks = 1
batch.size = 16384
bootstrap.servers = [localhost:9092]
buffer.memory = 33554432
client.id = 
compression.type = none
connections.max.idle.ms = 540000
enable.idempotence = false
interceptor.classes = null
key.serializer = class org.apache.kafka.common.serialization.StringSerializer
linger.ms = 0
max.block.ms = 60000
max.in.flight.requests.per.connection = 5
max.request.size = 1048576
metadata.max.age.ms = 300000
metric.reporters = []
metrics.num.samples = 2
metrics.recording.level = INFO
metrics.sample.window.ms = 30000
partitioner.class = class org.apache.kafka.clients.producer.internals.DefaultPartitioner
receive.buffer.bytes = 32768
reconnect.backoff.max.ms = 1000
reconnect.backoff.ms = 50
request.timeout.ms = 30000
retries = 0
retry.backoff.ms = 100
sasl.jaas.config = null
sasl.kerberos.kinit.cmd = /usr/bin/kinit
sasl.kerberos.min.time.before.relogin = 60000
sasl.kerberos.service.name = null
sasl.kerberos.ticket.renew.jitter = 0.05
sasl.kerberos.ticket.renew.window.factor = 0.8
sasl.mechanism = GSSAPI
security.protocol = PLAINTEXT
send.buffer.bytes = 131072
ssl.cipher.suites = null
ssl.enabled.protocols = [TLSv1.2, TLSv1.1, TLSv1]
ssl.endpoint.identification.algorithm = null
ssl.key.password = null
ssl.keymanager.algorithm = SunX509
ssl.keystore.location = null
ssl.keystore.password = null
ssl.keystore.type = JKS
ssl.protocol = TLS
ssl.provider = null
ssl.secure.random.implementation = null
ssl.trustmanager.algorithm = PKIX
ssl.truststore.location = null
ssl.truststore.password = null
ssl.truststore.type = JKS
transaction.timeout.ms = 60000
transactional.id = null
value.serializer = class org.apache.kafka.common.serialization.StringSerializer

这些属性在哪里设置?

共有1个答案

顾乐池
2023-03-14

查看org.apache.kafka.clients.producer.ProducerConfig。在那里,您可以发现一些属性具有默认值

define(BATCH_SIZE_CONFIG, Type.INT, 16384, atLeast(0), Importance.MEDIUM, BATCH_SIZE_DOC)
 类似资料:
  • 我已经研究过这个问题:Spring3:注入默认Bean,除非存在另一个Bean,如果您知道所有Bean的名称,Java配置中显示的解决方案将很好地工作,但在我的情况下,我不知道Bean被称为什么。 有人知道有什么办法可以做到这一点吗?

  • 问题内容: 在我的应用程序中,我有用和注释的bean 。您可能会猜到:)第一个用于连接到生产数据库的bean,第二个注释使用伪造的DB(或其他)的bean,以加快开发速度。 我想要的是默认配置文件(),如果未被“ something-else ” 覆盖,它将始终使用。 完美将是在我的: 然后用覆盖它,这样我就可以做到: 但是可悲的是这是行不通的。知道我怎么能做到吗?我无法在所有环境上进行设置。 问

  • 在我的应用程序中,我有用和注释的bean。第一个,你可以猜到:),用于连接到生产数据库的bean,第二个注释使用一些假数据库(或其他任何东西)的bean,以使开发更快。 我想要的是默认配置文件(),如果它不被"某物"覆盖,它将始终使用。 在我的: 然后用覆盖它,这样我就可以: 但可悲的是,这是行不通的。你知道我怎么能做到吗?设置在我的所有环境中都不是一个选项。

  • Spring Boot是否有默认的EntityManager。我现在正在设置一个,但我注意到当我的项目加载时,我看到了以下内容: LocalContainerEntityManagerFactoryBean:为持久性单元“默认”构建JPA容器EntityManagerFactory 这是默认的EntityManager吗?如果是,我如何访问它? 提前谢谢你。

  • 我试图在登录过程中添加用户ip验证。如果用户的ip地址不在数据库中,应用程序应该拒绝身份验证。 问题:根据下面的设置,Auth.AuthenticationProvider()并没有替换默认的DaoAuthenticationProvider,而是将UserIpAuthenticationProvider添加为列表中的第一个AuthenticationProvider。 在用户名/密码组合不正确的

  • 问题内容: 在我的应用程序中,我有一个“编辑用户详细信息”页面,我想在相应的editText字段中显示当前名称,电子邮件地址等,然后用户可以删除它们并根据需要输入一个新名称。 有没有办法做到这一点?谢谢你的帮助 问题答案: 您可以用来设置EditText字段的当前文本。 例: