小编jov*_*ven的帖子

Kafka 生产者属性enable.idempotence=true 导致错误

将 kafka 生产者属性设置为 true

kafkaProps.put("enable.idempotence" , "true");

我遇到以下错误 -

2021-04-18 16:43:53.584[0;39m [31mERROR[0;39m [35m15524[0;39m [2m---[0;39m [2m[ad | producer-1][0;39m [36mo.a.k.clients.producer.internals.Sender [0;39m [2m:[0;39m [Producer clientId=producer-1] Aborting producer batches due to fatal error

org.apache.kafka.common.errors.ClusterAuthorizationException: Cluster authorization failed.

[2m2021-04-18 16:43:53.585[0;39m [31mERROR[0;39m [35m15524[0;39m [2m---[0;39m [2m[  restartedMain][0;39m [36mc.a.c.g.kafkaclient.PricerProducer      [0;39m [2m:[0;39m sending above record failed. java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.ClusterAuthorizationException: Cluster authorization failed. 
[2m
Run Code Online (Sandbox Code Playgroud)

集群是否必须支持/启用此功能。如果是这样,集群应该使用的 Kafka 最低版本是什么。


来自卡夫卡文档 -

启用幂等性

当设置为“true”时,生产者将确保每条消息的一份副本准确写入流中。如果为“false”,则生产者由于代理故障等原因重试,可能会在流中写入重试消息的重复项。请注意,启用幂等性要求 max.in.flight.requests.per.connection 小于或等于 5,重试次数大于 0,并且 ack 必须为“all”。如果用户没有明确设置这些值,则会选择合适的值。如果设置了不兼容的值,将抛出 ConfigException。类型:布尔值 默认值:false 有效值: 重要性:低

我设置了 - max.in.flight.requests.per.connection=1 并且 acks 未设置,因此它自动设置为 -1(全部)。所以,我发现我的配置很好,但即使如此,它也应该导致 ConfigException 而不是 ClusterAuthorizationException。

apache-kafka kafka-producer-api

5
推荐指数
1
解决办法
2万
查看次数

Terraform - 什么是空提供者?

我想知道 terraform null 提供程序的真正用途是什么以及何时使用和不使用它。

我已经浏览了 Terraform 文档 - https://registry.terraform.io/providers/hashicorp/null/latest/docs 但没有什么帮助。

空提供者

空提供程序是一个相当不寻常的提供程序,它具有故意不执行任何操作的构造。这可能听起来很奇怪,实际上在大多数情况下不需要使用这些构造,但它们在各种情况下都非常有用,可以帮助协调棘手的行为或解决限制。

该提供程序的每个功能的文档(可通过导航访问)给出了这些构造可能有用的情况的示例。

使用 null 提供程序可能会使 Terraform 配置更难以理解。虽然它在某些情况下可能有用,但应谨慎使用,并在可用时首选其他解决方案。

有人可以详细说明吗? 但它们在各种情况下都非常有用,可以帮助协调棘手的行为或解决限制。并提供进一步的参考来探索该提供商。

-- 这就是我的providers.tf 文件的样子-

provider "aws" {
  alias   = "primary"
  region  = "us-east-1"
  profile = "${local.primary_aws_profile}"
  version = "~> 2.70.0"
}

provider "template" {
  version = "~> 1.0"
}

provider null {
  version = "~> 1.0"
}
Run Code Online (Sandbox Code Playgroud)

amazon-web-services terraform terraform-provider-aws

5
推荐指数
2
解决办法
7725
查看次数