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) {

    }
}
相关推荐
数智顾问4 分钟前
(172页PPT)某大型集团数字化转型采购供应链及财务管控业务流程蓝图规划方案(附下载方式)
大数据·人工智能
lisw057 分钟前
生物数学:概念、历史、内容、挑战与展望!
大数据·数学建模
做个有深度的老李8 分钟前
中小机加工车间协作机器人落地难点|从集成交付能力角度选型
大数据·人工智能·机器人·自动化·柔性机器人
LONGZETECH13 分钟前
新能源技术实训难题破解:纯电动汽车五大核心系统三维仿真解决方案
大数据·c语言·人工智能·安全·汽车
见闻小天地18 分钟前
空调机房赛莱默B&G冷冻泵/冷却泵的核心技术特性分析
大数据·运维·数据库
JWASX38 分钟前
【agent 开发】Agent 智能体
大数据·人工智能·python
copilot中国版1 小时前
从关账到报表,Copilot 帮财务搭建标准化管理体系
大数据
T06205141 小时前
【数据集】地级市市场分割指数和市场一体化指数数据(2001-2024年)
大数据
FPGA信号处理2 小时前
【电磁大数据理论与算法】第四课:电磁感知
大数据
问商十三载12 小时前
AI引擎生成式优化实践:刑事辩护律师团队IP构建
大数据·人工智能