kafka单机搭建,并测试api
所用环境:
kafka_2.-2.0..gz
centos 6.9 nat动态ip
准备工作:
().将防火墙关闭
service iptables stop 临时关闭
chkconfig iptables off 永久关闭 ().修改C:\Windows\System32\drivers\etc 下的hosts文件
增加映射
启动zookeeper服务(采用kafka内置的zk)
/root/kafka_2.-2.0./bin
在这个目录下启动 zookeeper-server-start.sh 命令 :bin/zookeeper-server-start.sh config/zookeeper.properties 当最后一行显示 INFO binding to port 0.0.0.0/0.0.0.0:2181 证明成功
启动kafka服务
进入到kafka目录下
bin/kafka-server-start.sh config/server.properties
创建一个topic
bin/kafka-topics.sh --create --zookeeper localhost: --replication-factor --partitions --topic testTopic 我这里是 192.168.15.140 test
localhost改为test也可以运行成功
(当出现副本什么的larger than n,就要关闭防火墙)
kafka生产者生产消息
bin/kafka-console-producer.sh --broker-list test: --topic testTopic
消费者消费消息
bin/kafka-console-consumer.sh --bootstrap-server test: --topic testTopic --from-beginning
代码测试:
这里用了idea
produce
package com.xuliugen.kafka.demo; import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.ProducerRecord; import java.util.Properties; public class ProducerDemo { // Topic
private static final String topic = "testTopic"; public static void main(String[] args) throws Exception { Properties props = new Properties();
props.put("bootstrap.servers", "192.168.15.140:9092");
props.put("acks", "0");
props.put("group.id", "1111");
props.put("retries", "0");
props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer"); //生产者实例
KafkaProducer producer = new KafkaProducer(props); int i = 1; // 发送业务消息
// 读取文件 读取内存数据库 读socket端口
while (true) {
Thread.sleep(1000);
producer.send(new ProducerRecord<String, String>(topic, "key:" + i, "value:" + i));
System.out.println("key:" + i + " " + "value:" + i);
i++;
}
}
}
comsumer
package com.xuliugen.kafka.demo; import org.apache.kafka.clients.consumer.ConsumerRecord;
import org.apache.kafka.clients.consumer.ConsumerRecords;
import org.apache.kafka.clients.consumer.KafkaConsumer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import java.util.Arrays;
import java.util.Properties; public class ConsumerDemo {
private static final Logger logger = LoggerFactory.getLogger(ConsumerDemo.class);
private static final String topic = "testTopic"; public static void main(String[] args) { Properties props = new Properties();
props.put("bootstrap.servers", "192.168.15.140:9092");
props.put("group.id", "1111");
props.put("enable.auto.commit", "true");
props.put("auto.commit.interval.ms", "1000");
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<String, String>(props); consumer.subscribe(Arrays.asList(topic)); while (true) {
ConsumerRecords<String, String> records = consumer.poll(1000);
for (ConsumerRecord<String, String> record : records) {
System.out.printf("offset = %d, key = %s, value = %s%n", record.offset(), record.key(), record.value());
}
}
}
}
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>com.xuliugen.kafka</groupId>
<artifactId>kafka.demo</artifactId>
<version>1.0-SNAPSHOT</version> <dependencies>
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
<version>2.0.0</version>
</dependency> <dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.12</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.12</version>
</dependency> </dependencies> </project>
抄袭自
https://blog.csdn.net/xlgen157387/article/details/77312569
代码地址 链接: https://pan.baidu.com/s/1hjJ7IRMTQEFdV-8SCf7VlA 提取码: 286w 复制这段内容后打开百度网盘手机App,操作更方便哦
kafka单机搭建,并测试api的更多相关文章
- kafka服务器搭建与测试
kafka服务器搭建 kafka自身集群信息的管理以及对producer和consumer的信息管理是通过zookeeper实现的,zookeepr是kafka不可分割的一部分,所以搭建zookeep ...
- 大数据统计分析平台之一、Kafka单机搭建
1.zookeeper搭建 Kafka集群依赖zookeeper,需要提前搭建好zookeeper 单机模式(7步)(集群模式进阶请移步:http://blog.51cto.com/nileader/ ...
- kafka单机搭建
1.安装jdk1.8和zookeeper 2.下载kafka上传服务器 下载地址:http://archive.apache.org/dist/kafka/0.10.0.0/kafka_2.11-0. ...
- 【Kafka】搭建和测试等问题
1.安装启动kafka #跳转到下载目录cd /opt/setup # 下载安装包 wget http://mirror.bit.edu.cn/apache/kafka/0.10.2.0/kafka_ ...
- Kafka 概念、单机搭建与使用
目录 Kafka 概念.单机搭建与使用 基本概念介绍 Topic Producer Consumer Kafka单机配置,一个Broker 环境: 配置zookeeper 配置Kafka 使用Kafk ...
- 【运维技术】kafka三实例集群环境搭建及测试使用
kafka三实例集群环境搭建及测试使用 单机搭建分为两部分:1. 软件安装启动 2. 软件配置 软件安装启动: # 切换到目录 cd /app # 获取kafka最新安装包,这边使用的是镜像地址,可以 ...
- kafka单机环境搭建及其基本使用
最近在搞kettle整合kafka producer插件,于是自己搭建了一套单机的kafka环境,以便用于测试.现整理如下的笔记,发上来和大家分享.后续还会有kafka的研究笔记,依然会与大家分享! ...
- kafka环境搭建及librdkafka测试
kafka环境搭建及librdkafka测试 (2016-04-05 10:18:25) 一.kafka环境搭建(转自http://kafka.apache.org/documentation.h ...
- Tensorflow object detection API ——环境搭建与测试
1.开发环境搭建 ①.安装Anaconda 建议选择 Anaconda3-5.0.1 版本,已经集成大多数库,并将其作为默认python版本(3.6.3),配置好环境变量(Anaconda安装则已经配 ...
随机推荐
- DDCTF-2019
Web 滴 Web 签到题 Web 大吉大利,今晚吃鸡 1)滴 网址http://117.51.150.246/index.php?jpg=TmpZMlF6WXhOamN5UlRaQk56QTJOdz ...
- Jenkins_安装
1.下载war包 wget -c -O ./jenkins.war http://mirrors.jenkins.io/war-stable/latest/jenkins.war 2.启动下载好的wa ...
- 移动开发day2_css预处理器_flex布局
css预处理器 一种技术,可以提高编写css代码的技术而已. 有3种预处理器常见 less sass stylues less使用流程 编写符合less语法的less文件 使用工具 将less编译成 ...
- 浅谈 JSP & Servlet
body { text-align: center; } div.develon { background-color: #cccccc; font-size: 20px; } 背景 相信大家都见过这 ...
- APACHE 安装
APACHE 安装 到官网下载apache软件 解压apache软件 安装APR相关优化模块 创建APACHE安装目录 安装apche,开始预编译(检测安装环境) 编译和安装 启动时报错及排错 修改 ...
- Linux之防火墙管理篇[Ubuntu:ufw]
前言 由于近期,腾讯云服务器就要到期了,学生优惠即将失效了,所以准备将数据库和项目迁移到vultr上.然而,在使用nivicat连接mysql数据库的过程中,却屡次出现:Can't connect t ...
- 在Windows2008r2 安装.net4.5
WebApi 是比较高的环境下面开发 需要的环境是net4.5 或以上. Windows2008r2 里面没有这个环境必须自己安装.安装net4.5 必须sp1环境以上才能安装. 将Windows20 ...
- .net core 2.0 报错:error NU1102: Unable to find package 。。。
这种是nuget无法还原的问题.解决问题的方法: 在项目文件所在的目录下创建文件:NuGet.Config 里面内容: "?> <configuration> <pa ...
- python3: 自动化测试框架pytest
最近在学习web自动化,所以在这里总结一下pytest框架. 其实pytest 和 unittest 都是自动化测试框架,但是pytest更好用一些,有以下几个优点:1)可以根据标签执行用例:2)?? ...
- 使用Github时遇到问题的解决方法
记录了一些我在使用Github时遇到问题的解决方法 git中报unable to auto-detect email address 错误的解决办法 问题描述: 执行 git commit -m &q ...