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

可以为Spring Kafka DLQ设置较低的分区计数吗?

凌恩
2023-03-14

我们正在研究优化磁盘空间使用的选项。在这样做的时候,我们查看了 kafka 分区的保留磁盘空间。现在,错误主题使用与源主题相同的分区数。我们实际上并不需要分区错误主题,kafka 为每个分区分配了大量的空间。

所以问题是,是否可以使用最近引入的配置 dlqProducerProperties 为 dlq 设置较低的分区计数?

当我们在代码中插入一些较低的分区数时,我们面临一些问题,即消息无法移动到dlq,因为目标分区不匹配。我猜源消息的分区索引被重用以将其移动到dlq目标(相同的分区索引),但它只有1个分区,而不是9个分区。这是kafka客户端或Spring云流的限制吗?

共有1个答案

陆安国
2023-03-14

活页夹当前将分区1:1映射到DLQ主题;这是为了保持秩序(对于那些关心的用户)。

在Spring for Apache Kafka项目(由活页夹使用)中,DeadletterPublishingRecoverer有一个可配置的目标解析器,允许将死信发送到DLQ主题中的不同分区。

但是,活页夹目前未使用此功能(其中死信早于核心项目中的支持)。

请针对活页夹打开新功能GitHub问题。

 类似资料:
  • 假设我有一张桌子,像这样: 这遵循了所需的Cassandra模式,跨分区分布良好(假设默认的Murmur3哈希分区器)。 但是,我也需要(很少)按时间顺序执行范围查询。这在Cassandra中似乎是不可能的。实际上,我确实需要按组访问数据,所以是可以接受的。由于似乎没有办法让辅助索引有多个列,我想正确的做法是将其反规范化,如下所示: 除了< code>group基数很低,比方说< code>('A

  • 问题内容: 我正在尝试对Spring 3.1 的注释支持,并且想知道是否有任何方法可以通过设置TTL在一段时间后清除缓存的数据?现在,从我看到的内容中,我需要使用和自己清除它,并与我一起使用可以实现TTL实现,但是对于这样一个简单的任务来说似乎有点多了吗? 问题答案: 如何设置TTL / TTI /驱逐策略/ XXX功能? 直接通过你的缓存提供程序。缓存抽象是…好吧,抽象不是缓存实现 因此,如果你

  • 我对DynamoDB比较陌生,我们正在为我们的一个应用程序设计一个自由形式的搜索GUI。我们使用的主要数据存储是传统的关系数据库,我们计划使用DynamoDB作为数据库顶部的持久“缓存”层,仅用于搜索。 在我们的例子中,我们有3个键来确定客户。 我们将客户存储为上述3个id的组合,如下所示: billingAccountNumber客户ID DynamoDB中的每个项目代表客户在特定时间发生的事件

  • 1.1. 分区设置 2. define KERNEL_SIZE_NAND 0x500000 3. define CONFIG_KERNEL_OFFS 0x500000 4. define CONFIG_KERNEL_SIZE KERNEL_SIZE_NAND 5. define CONFIG_FDT_ADDR 0x10000100 6. define CONFIG_FDT_OFFS 0x28000

  • 问题内容: 我正在使用以下bash命令模式运行memcached: 尝试跟踪整个平台上无与伦比的按键设置。 memtracer脚本在下面,并且可以按预期运行,但有一个小问题。观察中间日志文件的大小,直到memkeywatchYMD.log的大小约为15-18K时,memtracer.py才开始获取输入。有没有更好的方法可以读入stdin或将缓冲区大小减小到1k以下以获得更快的响应时间? 问题答案: