Kafka学习(三)简单实例(可以简单做测试)

2023-11-20

java客户端连接kafka简单测试
本案例kafka版本是kafka_2.11-0.9.0.1,用java来实现kafka生产者、消费者的示例 
在测试的过程中遇到的特别的问题以及解决办法,其他小问题就不一一列举了。

1 . 使用kafka-clients进行测试,maven依赖

<dependency>
     <groupId>org.apache.kafka</groupId>
     <artifactId>kafka-clients</artifactId>
     <version>0.9.0.1</version>
 </dependency>


需要注意:kafka-clients的版本必须和kafka安装的版本一致 
2 . Consumer测试类收不到消息的原因:

①. 先开启consumer测试类,等待poll数据。 
②. 开启producer测试类,发送数据,并确保发送成功。 
③. 正常情况下这样就可以收到数据了。生产者示例

public class ProducerTest {
    private void execMsgSend() throws  Exception{
        Properties props = new Properties();
        props.put("bootstrap.servers", "阿里云外网Ip:9092");
        props.put("acks", "1");
        props.put("retries", 0);
        props.put("batch.size", 16384);
        props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
        props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");
        Producer<String, String> procuder = new KafkaProducer<String, String>(props);

        String topic = "test";
        for (int i = 1; i <= 10; i++) {
            String value = " this is another message_" + i;
            ProducerRecord<String,String> record = new ProducerRecord<String, String>(topic,i+"",value);
            procuder.send(record,new Callback() {
                @Override
                public void onCompletion(RecordMetadata metadata, Exception exception) {
                    System.out.println("message send to partition " + metadata.partition() + ", offset: " + metadata.offset());
                }
            });
            System.out.println(i+" ----   success");
            Thread.sleep(1000);
        }
        System.out.println("send message over.");
        procuder.close();
    }
    public static void main(String[] args) throws  Exception{
        ProducerTest test1 = new ProducerTest();
        test1.execMsgSend();
    }
}



消费者示例
 

public class Consumer {
    public static void main(String[] s){  
        Properties props = new Properties();
        props.put("bootstrap.servers", "阿里云外网Ip:9092");   
        props.put("group.id", "1");
        props.put("enable.auto.commit", "true");
        props.put("auto.commit.interval.ms", "1000");
        props.put("session.timeout.ms", "30000");
        props.put("key.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");
        props.put("value.deserializer", "org.apache.kafka.common.serialization.StringDeserializer");
        KafkaConsumer<String, String> consumer = new KafkaConsumer<>(props);
        consumer.subscribe(Arrays.asList("test"));
        while (true) {
            System.out.println("poll start...");
            ConsumerRecords<String, String> records = consumer.poll(100);
            int count = records.count();
            System.out.println("the numbers of topic:" + count);
            for (ConsumerRecord<String, String> record : records)
                System.out.printf("offset = %d, key = %s, value = %s", record.offset(), record.key(), record.value());
        }
   }  
}

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Kafka学习(三)简单实例(可以简单做测试) 的相关文章

  • Scratch资料

    Scratch软件是免费的 免费的 免费的 任何需要花钱才能下载Scratch软件的全是骗子 1 什么是Scratch Scratch是麻省理工学院的 终身幼儿园团队 开发的一种图形化编程工具 是面向青少年的一款模块化 积木化 可视化的编程
  • 【RF-SSA-LSTM】随机森林-麻雀优化算法优化时间序列预测研究(Python代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 2 1 RF特征选择 2 2 LSTM预测 2 3 SSA LSTM预测 2 4 MLP预测
  • JDK不同版本间的新特性-基础篇

    目录 一 JDK环境部署 1 1 JDK18与IDEA2022环境准备 二 JDK9 10新特性 2 1 JDK9新特性 私有接口方法 2 2 JDK9新特性 通过try块自动关闭资源 2 4 JDK10新特性 var动态类型推断 局部变量
  • LVGL V8应用——实现互斥

    按键互斥 void language setup lv obj t cont lv obj create page lv obj set size cont 320 160 lv obj t ch cb lv checkbox create
  • python项目部署nginx_Nginx Python(Django)项目部署

    CentOS 7 系统默认安装 Python 2 7 版本 本节搭建的是基于 Python3 的 Django 网站 所以需要升级到 Python3 版本 1 安装 Python 及 Django 配置样例如下 yum install y
  • kubeadm部署1.20.0版本kubernetes

    一 环境准备 1 虚拟机环境 角色 主机名 IP地址 服务组件 master master 01 192 168 43 100 comtroller manager etcd scheduler kube apiserver node no
  • 在vmware里面看不到已经设置的共享文件夹

    查看你是否设置了共享文件夹 vmware hgfsclient 在上图的虚拟机点击安装vmware tools 之后会在vmware tools文件里面有一个压缩的文件 把它复制到自己创的文件夹并解压 自己创建文件夹使用mkdir p mo
  • mysql注册服务

    当我们使用win7命令行关闭mysql服务器的时候 命令 net stop mysql 出现 服务名无效的提示 因为我们没有在win下注册该服务 注册步骤 以管理员身份运行cmd 进入到mysql的bin目录 cd bin目录 例如我的命令
  • 中转inline hook,不需要恢复首字节的hook

    中转inline hook 不需要恢复首字节的hook 分类 HOOK 2015 02 23 23 38 446人阅读 评论 1 收藏 举报 HOOK inline hook 注 我实验的环境 win7 x64 经验证XP会有稍微区别 主要
  • C语言文件io操作

    一 fopen 在C语言中 操作文件之前应该先打开文件 使用
  • 金融类测试的总结

    金融测试前后端 前端 执行页面级测试用例 验证应用层基本功能 能是否和需求一致 页面风格是否一致 金额 利息 以及对应的状态是否正确等 后端 通过测试页面 录入测试用例 比对结果 为了看数字金额的准确性 也是确认金融底层的正确性以及逻辑性
  • win10家庭中文版系统配置远程桌面连接

    本文前面升级系统版本为转载https blog csdn net weixin 43407092 article details 89469145 如果系统是win10家庭中文版的话 是没有远程桌面连接这个功能的 微软在家庭中文版中将这个功
  • 基于MyBatis3.0.6的基本操作介绍

    转自 http haohaoxuexi iteye com blog 1333271 每 一 个 MyBatis 的 应 用 程 序 都 以 一 个 SqlSessionFactory 对 象 的 实 例 为 核 心 SqlSessionF
  • 论文笔记 A Spatial-Temporal Decomposition Based Deep Neural Network for TimeSeries Forecasting

    0 abstract 空间时间序列预测问题出现在广泛的应用中 如环境和交通问题 由于存在特定的空间 短期和长期模式 以及维度的诅咒 这些问题具有挑战性 在本文中 我们提出了一个用于大规模空间时间序列预测问题的深度神经网络框架 我们明确设计了
  • 埋点功能测试

    突然接到一个测试任务 埋点部分功能全面检查第一轮测试 咦 埋点是什么 问问旁边的两位同事 他们也没听说过埋点 后来经过网上百度 问同事 问华华老师 终于弄明白了 在此做一下记录 1关于埋点 埋点测试只是数据采集的一种术语 而数据采集是提供给
  • 记录influxdb -select语句查询某列某个关键字的一段时间数据

    1 前几秒 时间格式 s 几分钟 时间格式 m 几小时 时间格式 h 的数据 语句 SELECT FROM table name WHERE column name keyword AND time
  • Python3相对路径符号斜杠 (/),点斜杠(./),点点斜杠(../)的意思

    转自https www cnblogs com wuliytTaotao p 9338259 html 在网上找了好久这几个符号的意思 但百度搜索引擎似乎对 符号不来电 搜出来没相关的 只有这篇教的比较全面 根目录 点进磁盘就是根目录 E
  • Python 输入圆半径,计算圆周长和面积

    用 Python 编写程序 输入圆半径 计算圆周长和面积 功能 输入圆半径 计算圆周长和面积 作者 Fulling 时间 2021年10月15日 import math 输入部分 r float input 输入圆的半径 处理部分 c 2
  • 开源P2P视频流媒体源代码研究

    1 Azureus http azureus sourceforge net 这是java版的betorrent 最新版本2 4 0 2 从网上直接下载的源代码是没法构建的 所用的库没有在包里面 可以到 http azureus cvs s

随机推荐

  • undefined reference to错误

    1 一种报错情景 编译静态库没有报错 而编译引用静态库的程序时 报undefined reference to静态库里面函数错误时 可能原因 函数声明和定义命名不一致 这种错误不好发现 编译静态库不报错是因为在头文件中能找到函数 而在使用静
  • Android 13 - Media框架(7)- NuPlayer::Source

    Source 在播放器中起着拉流 Streaming 和解复用 demux 的作用 Source 设计的好坏直接影响到播放器的基础功能 我们这一节将会了解 NuPlayer 中的通用 Source GenericSource 关注本地播放架
  • crm系统服务器要求,crm系统需要配备什么云服务器

    crm系统需要配备什么云服务器 内容精选 换一换 登录云服务器的用户名和密码 Windows操作系统用户名 AdministratorLinux操作系统用户名 root如忘记登录密码 可通过控制台提供的 重置密码 功能设置新密码 重置密码
  • docker中设置容器健康检查

    文章目录 一 docker compose方式 二 Dockerfile方式 三 docker run方式 四 查看检查日志 一 docker compose方式 在docker compose中加入healthcheck healthch
  • c语言图案代码简单,求个用最简单的的代码来实现图形界面…

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 include Declare Windows procedure LRESULT CALLBACK WindowProcedure HWND UINT WPARAM LPARAM Make t
  • 大雨

    大雨生彷徨 以为天人兮溯鎏妆 轰鸣兮悠远 望长水东来去也 长生共兴
  • ImportError: C extension: No module named 'pandas._libs.tslibs.timestamps' not built.解决方法

    想用一下pandas遇到了这个情况 错误的意思是没有名叫 pandas libs tslibs timestamps 的模块 网上说要这样做 进入pyinstaller包的安装目录 在python安装目录的Lib site packages
  • ubuntu 18.04.5中flow, smarts & xingtian 多智能体RL环境构建

    ubuntu 18 04 5中flow smarts xingtian 多智能体RL环境构建 Flow 虚拟环境构建 由于需要在同一个主机上运行多个环境 不同的环境具有不同的依赖包 因此每个智能体环境单独构建一个虚拟python环境 首先安
  • AutoDL上传数据详细步骤(自己用的步骤,可能没有其他大佬用的那么高级)

    写在前面 先推荐一下另一篇关于使用AutoDL的教程 AutoDL使用教程 1 创建实例 2 配置环境 上传数据 3 PyCharm2021 3专业版下载安装与远程连接完整步骤 注意 在AutoDL的终端键入命令运行时 通常是一定要先cd进
  • 华为OD机试 - 密室逃生游戏(Java)

    题目描述 小强正在参加 密室逃生 游戏 当前关卡要求找到符合给定 密码K 升序的不重复小写字母组成 的箱子 并给出箱子编号 箱子编号为 1 N 每个箱子中都有一个 字符串s 字符串由大写字母 小写字母 数字 标点符号 空格组成 需要在这些字
  • 随手学习笔记

    1 正点原子zynq视频教程 真人版 P128 P132讲解ADDA 第30 1讲高速ADDA实验 ADC芯片简介 哔哩哔哩 bilibili 2 正点原子zynq视频教程 真人版 关于zynq FPGA讲解非常详细 可逐个详细学习 第1讲
  • 使用QZXing生成并解析二维码

    QZxing 是对 zxing 的一个封装 用于在 Qt 程序中加入条形码和二维码识别的功能 这里就讲讲如何编译和使用这个库 前几年 QZXing 的代码是放到 sourceforge net 上的 现在迁移到了 github com 所以
  • sql手工注入

    information schema 系统数据库 包含所有数据库相关信息 information schema schemata中schema name列 字段为所有数据库名称 information schema tables中table
  • 中山大学App校园地图功能分析

    中山大学App校园地图简单功能分析介绍 用户入口 进入中山大学App首页 即可看到校园地图 点击后进入校园地图主界面 校区选取 进入地图主界面后 即可呈现出校园地图 顶上正中间是选取校区的功能按钮 单击后出现全部4个校区可供选择 路线导航
  • 如何在手机上打开xmind文件_如何高效率整理电脑上的文件 ?

    个人电脑 01 没有时间整理 也不想整理 怎么办 1 1 只整理电脑桌面 电脑桌面放着各种文件 已经成为多数人的习惯 一打开电脑 就可以从电脑桌面上看见自己有哪些文件等着处理 当天处理的文件存放在桌面 第二天要用的时候 直接在桌面打开就可以
  • python遍历文件夹中的图片

    import cv2 import os mainFolder Images RectSmall myFolders os listdir mainFolder print myFolders for folder in myFolders
  • jre jdk更改目录后Java无法运行问题解决方案

    问题 在将Java文件 包含jdk jre 由C盘直接剪贴到D盘后 所有Java程序无法运行 且其Java图标不再显示 解决方案 首先更改环境变量 当我们单纯地将Java文件更改位置后 我们计算机的环境变量仍未改变 依旧是当时安装Java时
  • Verilog中if- else if语句和case语句用法:

    一 if语句 1 两种情况 if 条件语句 begin end else begin end 2 多种情况 if 条件语句 begin end else if 条件语句 begin end else if 条件语句 begin end el
  • 编程大师-Netty

    45 张图深度解析 Netty 架构与原理 里奥ii的博客 CSDN博客 netty全过程图解 最详细清晰版 netty流程 PANDA的博客 CSDN博客
  • Kafka学习(三)简单实例(可以简单做测试)

    java客户端连接kafka简单测试 本案例kafka版本是kafka 2 11 0 9 0 1 用java来实现kafka生产者 消费者的示例 在测试的过程中遇到的特别的问题以及解决办法 其他小问题就不一一列举了 1 使用kafka cl