当前位置: 首页 > news >正文

手机网站微信代码网站公司建设 中山

手机网站微信代码,网站公司建设 中山,企业宣传视频制作免费模板,给网站底部做友情链接Kafka简介 Kafka是一个分布式的消息队列系统(Message Queue)。 官网:Apache Kafka 消息和批次 kafka的数据单元称为消息。消息可以看成是数据库表的一行或一条记录。 消息由字节数组组成,kafka中消息没有特别的格式或含义。 消息有可选的键&#x…

Kafka简介

Kafka是一个分布式的消息队列系统(Message Queue)。

官网:Apache Kafka

消息和批次

kafka的数据单元称为消息。消息可以看成是数据库表的一行或一条记录。

消息由字节数组组成,kafka中消息没有特别的格式或含义。

消息有可选的,也是一个字节数组,没有特殊的含义。当消息以一种可控的方式写入不同的分区时会用到键。最简单的例子,为键生成一个一致性散列值,然后使用散列值对主题分区进行取模,为消息选择分区。

为了提高效率,消息被分批次写入kafka。

批次就是一组消息,属于同一个主题分区

分批次传输可以减少网络开销,但是批次越大单位时间内的消息就越多,单个消息的传输时间就越长。

批次数据会压缩,可以提高数据的传输和存储能力,但要做更多的计算。

1、kafka的生产者在发送消息到kafka的时候,如果消息没有指定key,则按照轮询的策略,依次将各个消息发送给不同的主题的分区。

2、如果消息有key,则根据key的hash取模指定该消息发送给主题的哪个分区。

3、还可以直接指定一个消息发送给该主题的哪个分区。

主题(放了很多相似的消息的容器)可以理解为数据库表

主题分为多个分区(为了横向扩展,容量扩展了,并发处理能力扩展了)

每个分区有若干个副本分区(HA)

所有的分区都由kafka的broker来管理。

broker:运行kafka实例的主机。

模式

消息模式是使用一些额外的结构定义消息内容,便于理解。

kafka使用apache avro,紧凑的序列化格式,模式和消息体分开,支持强类型和模式进化,版本前后兼容。

数据格式一致性对于kafka很重要,对消息的读写进行解耦。

主题和分区

kafka的消息通过主题进行分类。主题类似于数据库中的表。

主题可以被分为若干个分区,一个分区就是一个提交日志。

消息以追加的方式写入分区,然后以先入先出的顺序读取。

无法保证整个主题消息的顺序,可以保证一个分区内的消息顺序。

kafka通过分区实现数据冗余和伸缩性。

一个主题通过将分区分布于不同的服务器上,横跨多个服务器,提供更大的性能。

可以把一个主题的数据看成一个流,不管它有多少个分区。流是一组从生产者移动到消费者的数据。

生产者和消费者

生产者(发布者、写入者)将消息发布到一个特定的主题上。

生产者默认情况下把消息均匀地分布到主题的所有分区上,而不关心特定消息会写到哪个分区。

分区器为消息的键生成一个散列值,映射到指定的分区上。这样可以保证包含同一个键的消息被写入到同一个分区。

消费者(订阅者、读者)订阅一个或多个主题,按照消息生成的顺序读取消息。

消费者通过偏移量区分已经读取过的消息。

偏移量是元数据,递增的整数值,在创建消息时kafka把它添加到消息里。

在给定的分区,每个消息偏移量唯一

消费者把每个分区最后读取的消息偏移量保存在zookeeper或kafka上。

消费者是消费者群组一部分,群组保证每个分区只能被一个消费者使用。

消费者与分区之间的映射称为消费者对分区的所有权关系。

broker和集群

一个独立的kafka服务器是一个broker

broker接收来自生产者的消息,为消息设置偏移量,提交消息到磁盘保存。

broker响应消费者请求,对读取分区做出响应,返回已经提交到磁盘上的消息。

单个broker可以轻松处理数千个分区以及每秒百万级的消息量。

每个集群有一个broker是集群控制器(自动选举,zk分布式锁)

控制器将分区分配给broker和监控broker。

一个分区属于一个broker,broker是分区的master

一个分区可以分配给多个broker,提供了消息冗余,多个副本之间主从切换。

消费者和生产者通过master操作消息。

副本分区只负责从主分区同步数据,不需要响应客户端请求。

主从切换需要在完全同步了主分区数据的副本分区中随机挑选做新的主分区。

保留消息是kafka的重要特性。默认的消息保留策略是,要么保存一段时间(7天),要么保留消息到一定大小的字节数(1GB)。当消息数量达到这些上限,旧消息过期被删除。

对每个主题,可配置消息保留策略。

多集群

需求:

        数据类型分离

        安全需求隔离

        多数据中心(灾难恢复)

如果使用多个数据中心,需要在它们之间同步消息。

kafka提供了MirrorMaker工具用于实现多个集群间的消息同步。MirrorMaker核心组件包含一个生产者和一个消费者,两者之间通过队列相连。消费者从一个集群读取消息,生产者把消息发送到另一个集群。

http://www.yayakq.cn/news/428972/

相关文章:

  • 专注扬中网站建设长沙行业网站建设
  • 怎么确定网站关键词企业网站备案那么麻烦吗
  • 网站如何做站内站网站开发开票内容写什么
  • 源码购买网站襄樊最好网站建设价格
  • 做网站字号多大服务外包主要做什么
  • 最好的开发网站建设wordpress只允许登陆
  • 国际网站后缀阳江招聘网前程无忧
  • 湛江cms模板建站网站示例
  • 网站展示型推广有哪些学校网站建设调查问卷
  • 中职网站建设与维护考试题公司网站推广费用
  • 山东省住房城乡建设厅网站首页做甲方去哪个网站应聘
  • 珠海建网站设计做网站欢迎页什么意思
  • 上海专业微信网站开发公司同城推广引流平台
  • 专业的培训网站建设沙坪坝做网站
  • 嘉兴手机端建站模板旅游网站系统功能
  • 在网站上做广告赣州本地网站
  • 做网站比较好的企业外贸建设网站
  • 访问自己做的网站吗网络用户管理系统
  • 做房产网站moshou wordpress主题
  • 网站运营做网页设计网站制作多少钱一个
  • 购物网站建设的选题意义个人备案网站可以做论坛吗
  • 专业网站建设官网网站开发新闻怎么写
  • 易思腾网站建设8080端口wordpress
  • 站长之家0网站的分辨率是多少像素
  • 高端集团网站建设wordpress怎么加滑块
  • etw做的网站网站更新迭代
  • 北京华诚传媒有限公司官方网站软件著作权申请
  • 网站建设外文版政策文件企业网站建设报价方案模板
  • 企业网站搜索引擎推广方法天津it培训机构
  • 做电商网站有什语言好企业微网站与手机微信号