美文网首页基础组件
kafka作业第二篇

kafka作业第二篇

作者: 海德堡绝尘 | 来源:发表于2017-01-02 09:10 被阅读91次

1. 实现Random Partitioner(即对于每条消息,发送到一个随机的Partition)

import kafka.producer.Partitioner;

/**

* 随机达到某一个节点

* Created by niewj on 2016/11/30.

*/

public class RandomPartitioner implements Partitioner {

@Override

public int partition(Object key, int numPartitions) {

/**

* 获得一个0到1000之间的随机数

*/

int randomNum = new Double(Math.random() * 1000).intValue();

return randomNum % numPartitions;

}

}

2. 通过实验验证Partitioner的实例个数及其是否需要保证线程安全

3. 请思考何时应该使用同步Producer,何时应使用异步Producer

追求高性能,能容忍数据偶尔丢失的情况下,可以使用异步Producer;

追求高可用,要求数据完整性的情况,可以使用同步Producer

相关文章

网友评论

    本文标题:kafka作业第二篇

    本文链接:https://www.haomeiwen.com/subject/ountmttx.html