环境:Mac OS 10.11.6
1.通过brew 下载 zookeeper 和 kafka
2.在kafka server.properties中配置 zookeeper.connect=localhost:2181
3.启动zookeeper
./zkServer start /usr/local/etc/zookeeper/zoo.cfg
4.启动kafka
./kafka-server-start.sh -daemon /usr/local/etc/kafka/server.properties
5.测试
./kafka-topics.sh --zookeeper localhost:2181 --list
./kafka-topics.sh --zookeeper localhost:2181 --create --topic henry-topic-1 --partitions 3 --replication-factor 1
./kafka-topics.sh --zookeeper localhost:2181 --list
6. 测试producer / consumer
./kafka-console-producer.sh --broker-list localhost:9092 --topic henry-topic-1
>test message
>hello, kafka
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic henry-topic-1 --from-beginning
hello, kafka
test message
7. performance 测试
producer测试
./kafka-producer-perf-test.sh --topic henry-topic-1 --num-records 500000 --record-size 512 --throughput -1 --producer-props bootstrap.servers=localhost:9092 acks=-1
258930 records sent, 51786.0 records/sec (25.29 MB/sec), 837.0 ms avg latency, 1163.0 max latency.
500000 records sent, 65376.569038 records/sec (31.92 MB/sec),
772.44 ms avg latency, 1163.00 ms max latency,
726 ms 50th, 1104 ms 95th, 1134 ms 99th, 1160 ms 99.9th.
consumer测试
./kafka-consumer-perf-test.sh --broker-list localhost:9092 --fetch-size 200 --messages 500000 --topic henry-topic-1
start.time | end.time | data.consumed.in.MB | MB.sec | data.consumed.in.nMsg | nMsg.sec | rebalance.time.ms | fetch.time.ms | fetch.MB.sec | fetch.nMsg.sec |
---|---|---|---|---|---|---|---|---|---|
31:579 | 45:186 | 244 | 17 | 500002 | 36745 | 47 | 13560 | 18 | 36873 |