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

    }
}
相关推荐
Cloudtechnology6 分钟前
GEO服务商哪家好?2026年头部服务商技术路线、行业适配与ROI数据全解析
大数据·人工智能
zyplayer-doc21 分钟前
企业文档的进化:网盘和在线文档的下一个升级方向—知识库系统
java·大数据·数据库·人工智能·ocr
geneculture28 分钟前
基于融智学范畴论、双重形式化与中文屋解密的第二代计算范式
大数据·人工智能·智慧系统·融智学的重要应用·融智时代(杂志)
chenyulin454543 分钟前
企业微信API:海量会话存档数据的高性能检索与Elasticsearch索引设计
大数据·人工智能·安全·企业微信
Inhand陈工1 小时前
当发电机装上“智慧大脑”:IG502+白鹰能源管家打造中东发电机远程监控与防盗方案
大数据·网络·物联网·阿里云·能源·边缘计算·信息与通信
ClickHouseDB1 小时前
推出 CostBench:一个用于数据仓库成本性能的开放基准
大数据·分布式·spark
未来和明天1 小时前
领嵌iLeadE-588边缘计算盒子在智慧农业中的应用
大数据·人工智能
xianghongtao01161 小时前
聚类评估的二次壁垒之战:可扩展轮廓系数近似算法深度解读
大数据·无监督学习·近似算法·聚类评估·轮廓系数·pps 采样
江畔柳前堤1 小时前
Go04-控制结构
大数据·人工智能·面试·职场和发展·go·业界资讯