Kafka自定义分区器编写教程

1.创建java类MyPartitioner并实现Partitioner接口

点击灯泡选择实现方法,导入需要实现的抽象方法

2.实现方法

3.自定义分区器的使用

在自定义生产者消息发送时,属性配置上加入自定义分区器

properties.put(ProducerConfig.PARTITIONER_CLASS_CONFIG,"com.ljr.kafka.producer.MyPartitioner");

4.运行

可以看到数据按照分区器的设定进入指定的分区

5.完整代码
java 复制代码
package com.ljr.kafka.producer;

import org.apache.kafka.clients.producer.Partitioner;
import org.apache.kafka.common.Cluster;

import java.util.Map;

public class MyPartitioner implements Partitioner {

    @Override
    public int partition(String topic, Object key, byte[] keyBytes, Object value, byte[] valueBytes, Cluster cluster) {
        
		//获取数据
        String data = value.toString();
        
		//定义分区
        int partition;
        
        if(data.contains("kafka")){
            partition = 0;
        }else{
            partition = 1;
        }
        
        return partition;
    }

    @Override
    public void close() {

    }

    @Override
    public void configure(Map<String, ?> configs) {

    }
}
相关推荐
金融小师妹16 分钟前
事件驱动分析:美联储决议临近,黄金弱势运行的AI政策定价框架
大数据·eclipse·时序数据库
IT毕设实战小研23 分钟前
基于大数据的人工智能社交媒体情绪分析与可视化的设计与实现
大数据·信息可视化·数据挖掘·数据分析·课程设计
像豆芽一样优秀1 小时前
用 Codex + 阿里云 DataWorks MCP 实现数仓自动化
大数据·人工智能
雾隐隐o1 小时前
Kafka 生产者消息丢失:ACK、重试与可靠发送
kafka
峥嵘life1 小时前
2026华为AI码道 CodeArts 使用分享:Windows端 + 服务器CLI 实战总结
android·大数据·开发语言·python
dfbz1234561 小时前
山茶油礼盒包装工程手记:材质、结构与工艺的参数化拆
大数据·人工智能·经验分享
huashengzsj1 小时前
经销商管理系统适合哪些行业使用?2026年知名的DMS经销商管理系统推荐
大数据
why-geo1 小时前
AI时代,AI入口流量会全面颠覆搜索引擎流量吗?
大数据·人工智能
艾莉丝努力练剑2 小时前
【Git:综合复盘】Git 原理与使用
大数据·人工智能·git·elasticsearch·面试
IT研究室2 小时前
最新大数据毕业设计选题推荐-基于大数据的全球地震活动时空分布分析与可视化-大数据-Spark-Hadoop-Bigdata
大数据·信息可视化·数据分析·spark·课程设计