Kafka性能测试

测试环境准备

Cpu

内存

硬盘

Intel(R) Xeon(R) CPU E5520 @ 2.27GHz

32G

6T

Kafka集群,服务器个数:3台 采用CMS垃圾回收

JVM运行参数(代码可以左右滑动哦)

-Xmx1G -Xms1G -server -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:+CMSScavengeBeforeRemark -XX:+DisableExplicitGC -Djava.awt.headless=true -Xloggc:/usr/local/kafka_2.10-0.8.2.2/bin/../logs/kafkaServer-gc.log -verbose:gc  -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false-Dkafka.logs.dir=/usr/local/kafka_2.10-0.8.2.2/bin/../logs-Dlog4j.configuration=file:/usr/local/kafka_2.10-0.8.2.2/bin/../config/log4j.properties

Kafka server端配置(代码可以左右滑动哦)

broker.id=165port=9092host.name=hadoop165.kuaiyong.innum.network.threads=3num.io.threads=8socket.send.buffer.bytes=102400socket.receive.buffer.bytes=102400socket.request.max.bytes=104857600log.dirs=/download/kafka-logs num.partitions=1num.recovery.threads.per.data.dir=1log.retention.hours=168log.segment.bytes=1073741824log.retention.check.interval.ms=300000log.cleaner.enable=false zookeeper.connect=hadoop165.xxx.in:2181,hadoop166.xxx.in:2181,hadoop167.xxx.in:2181zookeeper.connection.timeout.ms=6000

测试命令行如下(代码可以左右滑动哦)

生产者

bin/kafka-producer-perf-test.sh --broker-list=hadoop02:9092 --messages 100000 --topic s1 --threads 10 --message-size 1000 --batch-size 200 --compression-codec 1

消费者

bin/kafka-consumer-perf-test.sh --zookeeper hadoop03:2181 --messages 500000 --topic s1 --threads 1

正常请求测试

1、Producer:

数据量:230万条记录 每次打包发送1000条数据 数据格式:采用压缩格式

测试结果 最大处理量:39.2501MB/S TPS:41156.6817条

2、Consumer

耗时:18秒 总体文件大小:2193.45MB 最大处理量:163.6659MB/S TPS:171616.1767条

压力请求测试

1、Producer

数据量:1000万条数据 每次打包发送1000条数据 数据格式:采用压缩格式

测试结果 耗时:242秒 总体文件大小:9536.74MB 最大处理量:39.2531MB/S TPS:41159.8856条

2、Consumer

耗时:70秒 总体文件大小:9536.74MB 最大处理量:145.4193MB/S TPS:152483.1887条

结论:1000万条下的压力测试,性能有所降低,估计瓶颈期在500万条左右

原文发布于微信公众号 - 加米谷大数据(DtinoneBD)

原文发表时间:2018-05-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ImportSource

NoSQL 一致性[详解]更新一致性

翻译内容: NoSQL Distilled 第五章 Consistency 作者简介: ? 本节摘要: 一致性向来是分布式的一大问...

3987
来自专栏腾讯Bugly的专栏

【Dev Club 分享】安卓单元测试:What, Why and How

Dev Club 是一个交流移动开发技术,结交朋友,扩展人脉的社群,成员都是经过审核的移动开发工程师。每周都会举行嘉宾分享,话题讨论等活动。 本期,我们邀请了蘑...

3316
来自专栏Albert陈凯

2018-06-07 小团队的自动化运维实践经验翟志军一些小团队的自动化运维实践经验

3543
来自专栏EAWorld

数据转换:从单体式应用到微服务的低风险演变

作者:Christian Posta 译者:海松 原题:Low-risk Monolith to Microservice Evolution Part I...

4695
来自专栏竹清助手

善用API统一描述语言提升RestAPI开发效率

团队内部RestAPI开发采用设计驱动开发的模式,即使用API设计文档解耦前端和后端的开发过程,双方只在联调与测试时耦合。在实际开发和与前端合作的过程中,受限于...

2793
来自专栏大魏分享(微信公众号:david-share)

一个自来水公司的业务集成-数据库与Restful API的对接:构建以API为中心的敏捷集成系列-第三篇

CoolWater Inc.是一家当地的自来水公司,客户需要实施支付管理系统,目的是为客户提供便捷的在线水费支付界面。

1982
来自专栏Java3y

从零开始写项目【总结】

从零开发项目概述 最近这一直在复习数据结构和算法,也就是前面发出去的排序算法八大基础排序总结,Java实现单向链表,栈和队列就是这么简单,十道简单算法题等等… ...

45410
来自专栏用户2442861的专栏

GUN 意思

http://blog.csdn.net/luoweifu/article/details/50153461

2722
来自专栏技术小黑屋

优秀的英文技术博客

技术是没有国界的,想要学习先进的技术就不能仅仅局限于中文博客。本着独乐乐不如众的原则,这里分享几个本人一直订阅的英文博客。主要涉及的技术为Java或Androi...

2371
来自专栏EAWorld

浅谈BDD下的自动化测试框架

测试驱动开发(TDD)相信大家已经很熟悉了,而行为驱动开发(BDD)其实是TDD的一种演化。那什么是BDD,为什么要使用BDD, BDD下的自动化测试该如何做呢...

1951

扫码关注云+社区

领取腾讯云代金券