kafka应用之路

  1、在技术选型上,为什么要使用kafka,不使用rocketmq?

kafka是分布式日志存储系统.

1)kafka更容易大数据系统结合,例如我们用到的storm。

2)kafka比较热门,文档比较全

3)能够做到真正的保证数据不会丢失,不会重复,即使在节点down掉的情况下。

4)容易和我们的elk系统结合

2、介绍kafka

3、kafka安装

4、kafka使用(kafka的实践)


二、需要注意的问题:

1、kafka的consumer数量不能超过partition的数量;另外如果有同一个groupid的consumer去消费消息,这个groupid的消息就会被消费掉从而读不到消息。

2、kafka可以持久化一段时间的数据,通过下面的参数设置。可以设置基于时间的,也可以设置基于文件大小的


3、Kafka读取特定消息的时间复杂度为O(1),即与文件大小无关,所以删除过期文件与提高Kafka性能无关。

4、Kafka会为每一个Consumer Group保留一些metadata信息——当前消费的消息的position,也即offset。这个offset由Consumer控制。正常情况下Consumer会在消费完一条消息后递增该offset。当然,Consumer也可将offset设成一个较小的值,重新消费一些消息。因为offet由Consumer控制,所以Kafka broker是无状态的,它不需要标记哪些消息被哪些消费过,也不需要通过broker去保证同一个Consumer Group只有一个Consumer能消费某一条消息,因此也就不需要锁机制,这也为Kafka的高吞吐率提供了有力保障。

5、kafka使用默认的副本因子是1,也就是没有副本,因为:

在kafka的开发者看来副本似乎是一个附加的东西,没有大量的使用,这有很大的缺点:slave不活跃,吞吐量受到严重影响,它需要的精确的手动配置等

三、遇到的问题

1、无法发送或者消费消息

WARN [Producer clientId=console-producer] Connection to node -1 could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值