kafka的一些名词
broker.id
区kafka集群中每台机器的标识
log.dirs
日志的存放目录,这个最好不要放到/tmp目录下,因为kafka的已被消费和未被消费的数据也被当成“日志”存放到了日志目录,;
log.retention.hours log.segment.bytes log.retention.check.interval.ms log.cleaner.enable=false
因为数据存放在日志目录中,所以在实际集群中会有大量的数据,这样会导致日志目录会不断增大,一些被消费过的数据和日志是可以被删掉的。第一个配置变量是定义多久删除清理一下日志目录,第二个配置变量是定义日志文件达到多大就清理一下,第三个是检查间隔,第四个个是是否开启清理,默认不开启的,所以实际集群中我觉得应该开启清理器,并根据集群的配置优化清理的时间间隔和文件饱和大小的值;
replication-factor
这个变量和Hadoop的dfs.replication类似,简单讲就是副本数,一般来说replication-factor的数量和broker的数量一样,这个变量讲深点涉及到kafka的fail/recover机制,它对效率有一定的影响,但是增加了可用性。
partition
一个topic的消息分为不同的部分或者说文件夹存放,这样做可以实现水平扩展,避免对单个文件I/O造成的瓶颈问题,实现读写的并行性
consumer group或者 group.id
这个必须记住一个规则:每个consumer实例都属于一个consumer group,每条消息只会被同一个consumer group的一个consumer实例消费,不同的consumer group可以同时消费同一条消息
consumer reblance
kafka的consumer group机制的优点是每个consumer不用跟大量的broker通信,减少通信开销,同时也降低了分配难度,另外,因为同一个partition数据是有序的,这种设计可以保证每个partition里的数据也可以被有序的消费;但是劣势则是无法让同一个consumer group的consumer均匀消费,如果某consumer group中consumer数量少于partition数量,则至少有一个consumer会消费多个partition的数据,如果consumer的数量与partition数量相同,则正好一个consumer消费一个partition的数据,而如果consumer的数量多于partition的数量时,会有部分consumer无法消费该topic下任何一条消息。于是有了reblance。
kafka的一些名词的更多相关文章
- kafka相关术语名词
Topic:标签名,一个消息队列的名称 Producer:生产者,发布消息 Consumer:消费者,订阅发布消息,进行处理的存在 Broker:kafka集群,有一个.多个Topic Partiti ...
- 消息队列 Kafka 的基本知识及 .NET Core 客户端
前言 最新项目中要用到消息队列来做消息的传输,之所以选着 Kafka 是因为要配合其他 java 项目中,所以就对 Kafka 了解了一下,也算是做个笔记吧. 本篇不谈论 Kafka 和其他的一些消息 ...
- Kafka及 .NET Core 客户端
消息队列 Kafka 的基本知识及 .NET Core 客户端 消息队列 Kafka 的基本知识及 .NET Core 客户端 前言 最新项目中要用到消息队列来做消息的传输,之所以选着 Kafka ...
- (转)消息队列 Kafka 的基本知识及 .NET Core 客户端
原文地址:https://www.cnblogs.com/savorboard/p/dotnetcore-kafka.html 前言 最新项目中要用到消息队列来做消息的传输,之所以选着 Kafka 是 ...
- kafka 名词解释(四)
为什么要了解这些名词的解释呢?因为在学一个新的知识或者领域的时候,我们需要知道它所定义的概念和名词意思,因为只有这样我们才能理解和掌握这个新的知识点,才能更加系统的掌握这个技术. 一.名词解释 1.b ...
- kafka 名词解释及原理解析过程(三)
为什么要了解这些名词的解释呢?因为在学一个新的知识或者领域的时候,我们需要知道它所定义的概念和名词意思,因为只有这样我们才能理解和掌握这个新的知识点,才能更加系统的掌握这个技术. 一.名词解释 1.b ...
- kafka 名词概念
ProducerConsumerBrokerTopicPartitionConsumer Group分布式 Broker Kafka集群包含一个或多个服务器,这种服务器被称为brokerTop ...
- kafka学习笔记:知识点整理
一.为什么需要消息系统 1.解耦: 允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束. 2.冗余: 消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险. ...
- Kafka随笔一
一.KafKa所涉及到的名词概念: 1. Topic:用于划分Message的逻辑概念,一个Topic可以分布在多个Broker上. 2. Partition:是Kafka中横向扩展和一切 ...
随机推荐
- Unity2D Keynote
[Unity2D Keynote] 1.File Format Accepted by Unity 2.By double-clicking an object in Hierachy, you no ...
- GLSL Notes
[GLSL Notes] API of shader: glCreateShader(), glShaderSource(), glCompileShader(), glGetShadrInfoLog ...
- hdu 2899 Strange fuction
http://acm.hdu.edu.cn/showproblem.php?pid=2899 Strange fuction Time Limit: 2000/1000 MS (Java/Others ...
- HDU2955Robberies(DP)
http://acm.hdu.edu.cn/showproblem.php?pid=2955 题目是说一小偷偷东西,第i个物品的价值是M[i],被抓的概率是p[i],现在要使得在被抓的概率在P以下时的 ...
- 转载sublime text3中package Control
Sublime Text 3 安装Package Control 原来Subl3安装Package Control很麻烦,现在简单的方法来了 一.简单的安装方法 使用Ctrl+`快捷键或者通过View ...
- ASP.NET MVC- 视图
关于视图的一些一些一些 一.Action指定使用视图 public ActionResult Add(string txtName, string txtContent) { return View( ...
- installshield 注册dll
function OnFirstUIAfter() STRING szTitle, szMsg1, szMsg2, szOpt1, szOpt2; NUMBER bOpt1, bOpt2; begin ...
- EasyMock使用说明
来自官网的使用说明,原文见http://www.easymock.org/EasyMock2_0_Documentation.html 1.1. 准备 大多数的软件系统都不是单独运行的,它们都需要于其 ...
- BP神经网络算法学习
BP(Back Propagation)网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是眼下应用最广泛的神经网络模型之中的一个 ...
- C++ map注意事项
1.在map中,由key查找value时,首先要判断map中是否包含key. 2.如果不检查,直接返回map[key],可能会出现意想不到的行为.如果map包含key,没有问题,如果map不包含key ...