ProducerBlockedQuotaExceededError: Cannot create producer on topic with backlog quota exceeded

ProducerBlockedQuotaExceededError: Cannot create producer on topic with backlog quota exceeded

我在 AWS EKS 上有一个 Lucidworks Fusion 5 kubernetes 安装设置,目前有一个其中的服务 Connector Classic REST 服务 正在中断。深入研究日志后,我发现:

ERROR in com.lucidworks.logging.logback.PulsarAppender[PULSAR] - Failed to connect to Pulsar topic persistent://uat/_logs/system_logs at: pulsar://uat-pulsar-broker:6650 org.apache.pulsar.client.api.PulsarClientException$ProducerBlockedQuotaExceededError: Cannot create producer on topic with backlog quota exceeded

从这里我查看了 pulsar-broker 配置映射并发现:

backlogQuotaDefaultLimitGB: "10"

我不太熟悉 Apache Pulsar 但在我看来,如果我尝试提高此 积压配额限制 它应该允许Connector Classic REST 服务 再次连接到代理,这应该会恢复 Connector Classic REST 服务。这是一个公平的评估吗?

提前致谢。

为了解决这个问题,我遵循了以下步骤:

  1. Shell 进入 pulsar-broker pod

  2. 将目录更改为 /pulsar/bin 目录

  3. 使用pulsar-admin CLI查找需要清除的订阅

    ./pulsar-admin topics subscriptions <topic>

  4. 使用以下命令

    清除积压

    ./pulsar-admin topics clear-backlog <topic> -s <subscription>

  5. Shell 退出并删除 Connector Classic REST pod

  6. 几分钟后服务恢复