zoukankan      html  css  js  c++  java
  • Kafka性能

    基准测试Apache Kafka:每秒写入2百万(在三台便宜的机器上)

    核心的数据枢纽一定是高效的,可预测的,并且容易扩展。Kafka能够做到在普通的硬件上支撑每秒百万次写入。

    Kafka的数据模型非常简单,生产者将数据发送至kafka集群,然后由消费者处理这些数据:

    生产者将他们的记录发布到一个主题,消费者订阅一个或多个主题。卡夫卡主题只是一个分片式的预写日志。生产者将记录附加到这些日志中,消费者订阅更改。每条记录都是一个键/值对。该键用于将记录分配给日志分区(除非发布者直接指定分区)。

    测试环境

    6台相同配置的机器

    Intel Xeon 2.5 GHz processor with six cores
    Six 7200 RPM SATA drives
    32GB of RAM
    1Gb Ethernet

    Kafka集群搭建在其中三台,剩下三台搭建zookeeper。

    单线程生产,无复制因子

    对于第一次测试,我创建了一个包含六个分区但没有复制的Topic。然后我从一个线程中尽可能快地生成五千万个小记录(100字节)。

    在这些测试中关注小记录的原因在于,对于消息传递系统(通常)来说是更难的情况。如果消息很大,很容易以MB /秒为单位获得良好的吞吐量,但当消息较小时很难获得良好的吞吐量,因为处理每个消息的开销占主导地位。

    我们努力确保线性磁盘I/O。这六个普通机器提供了总吞吐量为822 MB /秒的线性磁盘I / O。这实际上远远超出了我们只能使用1千兆网卡的情况。许多消息传递系统将持久性视为一种昂贵的附加功能,可以减少性能,只应该谨慎使用,但这是因为它们无法执行线性I / O。

  • 相关阅读:
    【转载】消息队列使用的四种场景介绍
    Vue项目部署打包
    创建Vue项目vue-cli · Failed to download repo vuejs-templates/webpack: connect ETIMEDOUT
    数据库错误:ORA-12154
    oracle数据库一条sql语句批量插入数据
    Linux time scap
    winscp不能使用root登录
    Linux find ./ -name *.bak | xargs rm -rf
    Linux命令echo 3 > /proc/sys/vm/drop_caches
    redis查看服务器占用端口
  • 原文地址:https://www.cnblogs.com/Dhouse/p/8435565.html
Copyright © 2011-2022 走看看