Kafka介绍精品课件.pptVIP

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Kafka介绍研发二部 内容kafka是什么kafka体系结构kafka设计理念简介kafka安装部署kafka producer和consumer开发 Kafka关键词分布式发布-订阅消息系统LinkedIn 公司开发Scala语言分布式的,可划分的,多订阅者冗余备份持久性重复消费 Kafka关键特性同时为发布和订阅提供高吞吐量。据了解,Kafka 每秒可以生产约 25 万消息(50 MB),每秒处理 55 万消息(110 MB)。可进行持久化操作。将消息持久化到磁盘,因此可用于批量消费,例如 ETL,以及实时应用程序。通过将数据持久化到硬盘以及 replication 防止数据丢失。分布式系统,易于向外扩展。所有的 producer、broker 和 consumer 都会有多个,均为分布式的。无需停机即可扩展机器。消息被处理的状态是在 consumer 端维护,而不是由 server 端维护。当失败时能自动平衡。支持 online 和 offline 的场景。 Kafka的两大法宝数据文件的分段:Kafka解决查询效率的手段之一是将数据文件分段;为数据文件建索引:为了进一步提高查找的效率,Kafka为每个分段后的数据文件建立了索引文件,文件名与数据文件的名字是一样的,只是文件扩展名为.index。索引文件中包含若干个索引条目,每个条目表示数据文件中一条Message的索引。索引包含两个部分(均为4个字节的数字),分别为相对offset和position。索引优化:稀疏存储,每隔一定字节的数据建立一条索引。 消息队列分类点对点:消息生产者生产消息发送到queue中,然后消息消费者从queue中取出并且消费消息。注意:消息被消费以后,queue中不再有存储,所以消息消费者不可能消费到已经被消费的消息。Queue支持存在多个消费者,但是对一个消息而言,只会有一个消费者可以消费。发布/订阅:消息生产者(发布)将消息发布到topic中,同时有多个消息消费者(订阅)消费该消息。和点对点方式不同,发布到topic的消息会被所有订阅者消费。 消息队列MQ对比RabbitMQ:支持的协议多,非常重量级消息队列,对路由(Routing),负载均衡(Load balance)或者数据持久化都有很好的支持。ZeroMQ:号称最快的消息队列系统,尤其针对大吞吐量的需求场景,擅长的高级/复杂的队列,但是技术也复杂,并且只提供非持久性的队列。ActiveMQ:Apache下的一个子项,类似ZeroMQ,能够以代理人和点对点的技术实现队列。Redis:是一个key-Value的NOSql数据库,但也支持MQ功能,数据量较小,性能优于RabbitMQ,数据超过10K就慢的无法忍受Jafka,基于Kafka孵化,非Apache官方孵化,活跃度也不是很高 Kafka架构 Kafka的基本概念Producers:消息和数据生产者,向 Kafka 的一个 topic 发布消息的过程叫做 producers。Consumers:消息和数据消费者,订阅 topics 并处理其发布的消息的过程叫做 consumers。Broker:缓存代理,Kafka 集群中的一台或多台服务器统称为 broker。Topic:特指 Kafka 处理的消息源(feeds of messages)的不同分类。Partition:Topic 物理上的分组,一个 topic 可以分为多个 partition,每个 partition 是一个有序的队列。partition 中的每条消息都会被分配一个有序的 id(offset)。Message:消息,是通信的基本单位,每个 producer 可以向一个 topic(主题)发布一些消息。 Kafka的ProducersProducer将消息发布到指定的Topic中,同时Producer也能决定将此消息归属于哪个partition;比如基于"round-robin"方式或者通过其他的一些算法等.消息和数据生产者,向 Kafka 的一个 topic 发布消息的过程叫做 producers。异步发送批量发送可以很有效的提高发送效率。Kafka producer的异步发送模式允许进行批量发送,先将消息缓存在内存中,然后一次请求批量发送出去。 Kafka的broker1. Broker没有副本机制,一旦broker宕机,该broker的消息将都不可用。2. Broker:缓存代理,Kafka 集群中的一台或多台服务器统称为 broker。 broker会将消息暂时buffer起来,当消息的个数(或尺寸)达到一定阀值时,再flush到磁盘3. Broker不保存订阅者的状态,由订阅者自己保存。4. 无状态导致消息的删除成为难题(可能删除的消息正在被订阅

您可能关注的文档

文档评论(0)

leet1201 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档