Apache Kafka之设计】的更多相关文章

转自: http://blog.csdn.net/kevin_hx001/article/details/9413565        http://kafka.apache.org/design.html 我们为什么要构建这个系统 Kafka是一个分布式.分区的.多副本的.多订阅者的"提交"日志系统. 我们构建这个系统是因为我们认为,一个实现完好的操作日志系统是一个最基本的基础设施,它可以替代一些系统来作诸如:消息处理,ETL(Extraction-Transformation-Lo…
转自:  http://blog.csdn.net/lizhitao/article/details/39499283   估计大神会不定期更新,所以还是访问这个链接看最新的目录list比较好 apache kafka中国社区QQ群:162272557 目前QQ群1,2,3已满,请加群4 中国社区QQ群2:414762562 已满 中国社区QQ群3:191278841 已满 中国社区QQ群4:415846802 每当有新blog发布时,会在此处更新,欢迎大家拍砖共同成长 目录索引: Kafka使…
[http://www.infoq.com/cn/articles/apache-kafka/]分布式发布-订阅消息系统. Kafka是一种快速.可扩展的.设计内在就是分布式的,分区的和可复制的提交日志服务. Apache Kafka与传统消息系统相比,有以下不同:它被设计为一个分布式系统,易于向外扩展:它同时为发布和订阅提供高吞吐量:它支持多订阅者,当失败时能自动平衡消费者:它将消息持久化到磁盘,因此可用于批量消费,例如ETL,以及实时应用程序. 本文我将重点介绍Apache Kafka的架构…
http://www.infoq.com/cn/articles/kafka-analysis-part-1 Kafka是由LinkedIn开发的一个分布式的消息系统,使用Scala编写,它以可水平扩展和高吞吐率而被广泛使用.目前越来越多的开源分布式处理系统如Cloudera.Apache Storm.Spark都支持与Kafka集成.InfoQ一直在紧密关注Kafka的应用以及发展,“Kafka剖析”专栏将会从架构设计.实现.应用场景.性能等方面深度解析Kafka. 背景介绍 Kafka创建背…
近来,有许多关于“流处理”和“事件数据”的讨论,它们往往都与像Kafka.Storm或Samza这样的技术相关.但并不是每个人都知道如何将这种技术引入他们自己的技术栈.于是,Confluent联合创始人Jay Kreps发布了<流数据平台构建实战指南>.他结合自己过去五年中在LinkedIn构建Apache Kafka的经验,介绍了如何构建一个公司范围的实时流数据中心. 他们将该实时流数据中心称为流数据平台,其出现主要是由于需要: 在关系型OLTP数据库.Hadoop.Teradata.搜索系…
原文地址:http://blog.csdn.net/lizhitao/article/details/39499283 kafka开发与管理: 1)apache kafka消息服务 2)kafak安装与使用 3)apache kafka中server.properties配置文件参数说明 4)apache kafka中topic级别配置 5)Apache kafka客户端开发-java 6)kafka的ZkUtils类的java版本部分代码 7)kafka log4j配置 8)apache ka…
分布式发布订阅消息系统 Kafka 架构设计 转自:http://www.oschina.net/translate/kafka-design 我们为什么要搭建该系统 Kafka是一个消息系统,原本开发自LinkedIn,用作LinkedIn的活动流(activity stream)和运营数据处理管道(pipeline)的基础.现在它已为多家不同类型的公司 作为多种类型的数据管道(data pipeline)和消息系统使用. 活动流数据是所有站点在对其网站使用情况做报表时要用到的数据中最常规的部…
问题导读: 1.Flume传输的数据的基本单位是是什么? 2.Event是什么,流向是怎么样的? 3.Source:完成对日志数据的收集,分成什么打入Channel中? 4.Channel的作用是什么? 5.取出Channel中的数据,进行相应的存储文件系统,数据库,或者提交到远程服务器,由谁来完成? 6.Flume支那些数据格式? 7.对于直接读取文件Source,有两种方式,分别是什么? 8.Channel有多种方式有哪些方式? 概述Flume是Cloudera公司的一款高性能.高可能的分布…
Apache Kafka可以帮助你解决在发布/订阅架构中遇到消费数百万消息的问题.如今,商业应用.社交应用以及其它类型的应用产生的实时信息在不断增长,这些信息需要以简单的方式快速.可靠地路由到各种类型的接收者.在大多数情况下,产生信息和消费信息的应用都是自然分开的,彼此不可互相访问.需要一种机制,让信息的生产者和消费者能无缝地集成.在大数据时代,收集数据也是一个挑战——因为数据量太大.第二个挑战是分析数据,它通常分为:1)用户行为数据2)应用程序性能跟踪3)日志形式的活动数据4)事件消息 消息订…
原文地址地址: http://blogxinxiucan.sh1.newtouch.com/2017/07/12/Apache-Kafka-介绍/ Apache Kafka教程 之 Apache Kafka - 介绍 Apache Kafka - 介绍 Apache Kafka起源于LinkedIn,后来成为2011年的开源Apache项目,然后在2012年成为Apache的一流项目.Kafka以Scala和Java编写.Apache Kafka是基于发布订阅的容错消息系统.它是快速,可扩展和分…
消息队列 消息队列技术是分布式应用间交换信息的一种技术.消息队列可驻留在内存或磁盘上, 队列存储消息直到它们被应用程序读走.通过消息队列,应用程序可独立地执行--它们不需要知道彼此的位置.或在继续执行前不需要等待接收程序接收此消息.在分布式计算环境中,为了集成分布式应用,开发者需要对异构网络环境下的分布式应用提供有效的通信手段.为了管理需要共享的信息,对应用提供公共的信息交换机制是重要的.常用的消息队列技术是 Message Queue. Message Queue 的通讯模式 点对点通讯:点对…
胡夕 <Apache Kafka实战>作者,北航计算机硕士毕业,现任某互金公司计算平台总监,曾就职于IBM.搜狗.微博等公司.国内活跃的Kafka代码贡献者. 前言 虽然目前Apache Kafka已经全面进化成一个流处理平台,但大多数的用户依然使用的是其核心功能:消息队列.对于如何有效地监控和调优Kafka是一个大话题,很多用户都有这样的困扰,今天我们就来讨论一下. 一.Kafka综述 在讨论具体的监控与调优之前,我想用一张PPT图来简单说明一下当前Kafka生态系统的各个组件.就像我前面所…
必读 | 大规模使用 Apache Kafka 的20个最佳实践 配图来源:书籍<深入理解Kafka> Apache Kafka是一款流行的分布式数据流平台,它已经广泛地被诸如New Relic(数据智能平台).Uber.Square(移动支付公司)等大型公司用来构建可扩展的.高吞吐量的.且高可靠的实时数据流系统.例如,在New Relic的生产环境中,Kafka群集每秒能够处理超过1500万条消息,而且其数据聚合率接近1 Tbps. 可见,Kafka大幅简化了对于数据流的处理,因此它也获得了…
<Apache Kafka实战>读书笔记-调优Kafka集群 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.确定调优目标 1>.常见的非功能性要求 一.性能(performance) 最重要的非功能性需求之一.大多数生产环境对集群性能都有着严格的要求.不同的系统对于性能有着不同的诉求.比如对数据库系统来说,最重要的性能是请求的响应时间(response time).用户总是希望一条查询或更新操作的整体响应时间越短越好:而对kafak而言,性能一般指的是吞吐量和延时…
<Apache Kafka 实战>读书笔记-认识Apache Kafka 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.kafka概要设计 kafka在设计初衷就是为了解决互联网公司的超级大量级数据的实时传输.为了实现这个目标,kafka在设计之初就需要考虑以下四个方面: 第一:吞吐量/延迟 第二:消息持久化  第三:负载均衡和故障转移 第四:伸缩性 1>.吞吐量/延时介绍 我们先打个比方:若kafka处理一条消息需要花费2ms,那么计算得到的吞吐量不会超过500…
原文作者:Ben Bromhead      译者:江玮 原文地址:https://www.infoq.com/articles/apache-kafka-best-practices-to-optimize-your-deployment 关键点: Kafka的低开销和易于水平伸缩的设计使得它能基于廉价硬件高效地运行. 使用最好的磁盘为ZooKeeper提供强大的网络带宽,分别存储日志,隔离ZooKeeper进程,禁用交换以减少延迟. 将Kafka的默认复制因子从2增加到3,这在大多数生产环境…
https://content.pivotal.io/rabbitmq/understanding-when-to-use-rabbitmq-or-apache-kafka RabbitMQ: Erlang Apache Kafka:Scala https://content.pivotal.io/rabbitmq/understanding-when-to-use-rabbitmq-or-apache-kafka 来自谷歌翻译 了解何时使用RabbitMQ或Apache Kafka 2017年…
Apache已经发布了Kafka 0.8,也是自从成为Apache软件基金会的顶级项目后Kafka的 第一个主版本. Apache Kafka是发布—订阅消息传递,实现了分布式提交日志,适用于离线和在线消息消费.它最初由LinkedIn开发的消息系统,用于低延迟的收集和发送大 量的事件和日志数据.最新版本包括群集内复制和多数据目录支持.目前请求处理也是异步的,使用请求处理线程的附属线程池来实现.日志文件可以按年龄进行覆 盖,并且日志级别可通过JMX进行动态设置.性能测试工具已提供,帮助解决存在的…
Apache Kafka近日推出0.11版本.这是一个里程碑式的大版本,特别是Kafka从这个版本开始支持“exactly-once”语义(下称EOS, exactly-once semantics).本文简要介绍一下0.11版本主要的功能变更,下面中的每一项都值得专门写篇文章好好聊聊. 一.修改unclean.leader.election.enabled默认值 Kafka社区终于下定决心要把这个参数的默认值改成false,即不再允许出现unclean leader选举的情况,在正确性和高可用…
今天带来一篇译文“调优Apache Kafka集群”,里面有一些观点并无太多新颖之处,但总结得还算详细.该文从四个不同的目标出发给出了各自不同的参数配置,值得大家一读~ 原文地址请参考:https://www.confluent.io/blog/optimizing-apache-kafka-deployment/ ========================================== Apache Kafka是当前最好的企业级流式处理平台.把你的应用程序链接到Kafka集群,剩下…
简介 Apache Kafka是分布式发布-订阅消息系统.它最初由LinkedIn公司开发,之后成为Apache项目的一部分.Kafka是一种快速.可扩展的.设计内在就是分布式的,分区的和可复制的提交日志服务. Apache Kafka与传统消息系统相比,有以下不同: 它被设计为一个分布式系统,易于向外扩展: 它同时为发布和订阅提供高吞吐量: 它支持多订阅者,当失败时能自动平衡消费者: 它将消息持久化到磁盘,因此可用于批量消费,例如ETL,以及实时应用程序. 本文我将重点介绍Apache Kaf…
apache kafka中国社区QQ群:162272557 apache kafka参考 http://kafka.apache.org/documentation.html 消息队列分类: 点对点: 消息生产者生产消息发送到queue中,然后消息消费者从queue中取出并且消费消息.这里要注意: 消息被消费以后,queue中不再有存储,所以消息消费者不可能消费到已经被消费的消息. Queue支持存在多个消费者,但是对一个消息而言,只会有一个消费者可以消费. 发布/订阅 消息生产者(发布)将消息…
简介 Apache Kafka是分布式发布-订阅消息系统.它最初由LinkedIn公司开发,之后成为Apache项目的一部分.Kafka是一种快速.可扩展的.设计内在就是分布式的,分区的和可复制的提交日志服务. Apache Kafka与传统消息系统相比,有以下不同: 它被设计为一个分布式系统,易于向外扩展: 它同时为发布和订阅提供高吞吐量: 它支持多订阅者,当失败时能自动平衡消费者: 它将消息持久化到磁盘,因此可用于批量消费,例如ETL,以及实时应用程序. 本文我将重点介绍Apache Kaf…
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文首发在云+社区,未经许可,不得转载. 大家好,我大概简单的介绍一下,我叫饶军,我是硅谷的初创公司Confluent的联合创始人之一,我们公司的三个创始人都是在最开始在领这个公司做kafka开发出身的.我们公司是2014年成立的,成立的宗旨想把公司做成一个帮助各种各样企业做基于kafka之上的数据流的事情. 在开始之前,我想大概做一个简单的调查,在座的有谁用过Kafka.大概有80%的人都用了.好,谢谢.今天跟大家分享,想分享一下我们的…
当Kafka最初创建时,它与Scala生产者和消费者客户端一起运送.随着时间的推移,我们开始意识到这些API的许多限制.例如,我们有一个“高级”消费者API,它支持消费者组并处理故障转移,但不支持许多更复杂的使用场景.我们还有一个“简单”的消费者客户端,提供完全控制,但需要用户自己管理故障转移和错误处理.所以我们设定了重新设计这些客户端,以便开辟与老客户很难或不可能的许多用例,并建立一套我们可以长期支持的API. 第一阶段是在0.8.1中重写生产者API.最近的0.9版本完成了第二阶段,引入了新…
本文作者是一位软件工程师,他对20位开发人员和数据科学家使用Apache Kafka的方式进行了最大限度得深入研究,最终将生产实践环节需要注意的问题总结为本文所列的20条建议. Apache Kafka是一个广受欢迎的分布式流媒体平台,New Relic.Uber以及Square等数千家公司都在使用它构建可扩展.高吞吐量.可靠的实时流媒体系统.例如,New Relic的Kafka集群每秒处理超过1500万条消息,总数据速率接近1 Tbps. Kafka在应用程序开发人员和数据科学家中非常受欢迎,…
1.大纲 了解 Apache Kafka是什么 掌握Apache Kafka的基本架构 搭建Kafka集群 掌握操作集群的两种方式 了解Apache Kafka高级部分的内容 2.消息系统的作用是什么? 消息系统最核心的功能有三个,分别是解耦.异步.并行. 下面我们通过用户注册的案例来说明消息系统的作用: 2.1.用户注册的一般流程 问题:随着后端流程越来越多,每步流程都需要额外的耗费很多时间,从而会导致用户更长的等待延迟. 2.2.改进成并行流程 问题:系统并行的发起了4 个请求,4 个请求中…
问题导读 1.Kafka的设计基本思想是什么?2.Kafka消息转运过程中是如何确保消息的可靠性的? 本节主要从整体角度介绍Kafka的设计思想,其中的每个理念都可以深入研究,以后我可能会发专题文章做深入介绍,在这里只做较概括的描述以便大家更好的理解Kafka的独特之处.本节主要涉及到如下主要内容: Kafka设计基本思想 Kafka中的数据压缩 Kafka消息转运过程中的可靠性 Kafka集群镜像复制 Kafka 备份机制 一.kafka由来     由于对JMS日常管理的过度开支和传统JMS…
简介 Apache Kafka是分布式发布-订阅消息系统.它最初由LinkedIn公司开发,之后成为Apache项目的一部分.Kafka是一种快速.可扩展的.设计内在就是分布式的,分区的和可复制的提交日志服务. Apache Kafka与传统消息系统相比,有以下不同: 它被设计为一个分布式系统,易于向外扩展: 它同时为发布和订阅提供高吞吐量: 它支持多订阅者,当失败时能自动平衡消费者: 它将消息持久化到磁盘,因此可用于批量消费,例如ETL,以及实时应用程序. 本文我将重点介绍Apache Kaf…
背景介绍 消息队列的比较 kafka框架介绍 术语解释 文件存储 可靠性保证 高吞吐量实现 负载均衡 应用场景 背景介绍: kafka是由Apache软件基金会维护的一个开源流处理平台,由scala和java编写.最早开发自LinkedIn,用做LinkedIn的活动流(Activity Stream)和运营数据处理管道(Pipeline)的基础.现在它已被多家不同类型的公司作为多种类型的数据管道和消息系统使用. kafka是一种分布式的,基于发布/订阅的消息系统. kafka特点: 快速持久化…