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

企业网站设计与制作网站百度收录秒收方法

企业网站设计与制作,网站百度收录秒收方法,南沙开发区建设和交通局网站,数字化文化馆网站建设kafka基本概念 Producer 生产者:负责将消息发送到 BrokerConsumer 消费者:从 Broker 接收消息Consumer Group 消费者组:由多个 Consumer 组成。消费者组内每个消费者负责消费不同分区的数据,一个分区只能由一个组内消费者消费&am…

kafka基本概念

  • Producer 生产者:负责将消息发送到 Broker
  • Consumer 消费者:从 Broker 接收消息
  • Consumer Group 消费者组:由多个 Consumer 组成。消费者组内每个消费者负责消费不同分区的数据,一个分区只能由一个组内消费者消费,消费者组之间互不影响
  • Broker:可以看做一个独立的 Kafka 服务节点或 Kafka 服务实例
  • Topic:一个逻辑上的概念,包含很多 partition,同一个 topic 下的 partition 的消息内容是不相同的
  • Partition:为了实现扩展性,一个非常大的 topic 可以分布到多个 broker 上,一个 topic 可以分为多个 partition,每个 partition 是一个有序的队列
  • Replica 副本:同一分区的不同副本保存的是相同的消息。为保证集群中的某个节点发生故障时,该节点上的 partition 数据不丢失,且 Kafka 仍然能够继续工作,Kafka 提供了副本机制,一个 topic 的每个分区都有若干个副本,一个 leader 和若干个 follower

kafka架构图

在这里插入图片描述

如何确定当前能读到哪一条消息?

在这里插入图片描述

分区相当于一个日志文件,我们需要知道几个概念

  • offset (消息偏移量)分别是 0~6
  • 0 代表这个日志文件的开始
  • HW(High Watermark)为 4。0~3 代表这个日志文件可以消费的区间,消费者只能消费到这 4 条消息
  • LEO 代表即将要写入消息的偏移量 offset

分区 ISR 集合中的每个副本都会维护自己的 LEO,而 ISR 集合中最小的 LEO 即为分区的 HW
在这里插入图片描述
如上图所示,3 个分区副本都是 ISR 集合当中的。最小的 LEO 为 3,就代表分区的 HW 为3,所以,当前分区只能消费到 0~2 之间的 3 条数据

生产者发送消息有哪些模式?

  • 发后即忘
  • 同步
  • 异步

发送消息的分区策略有哪些?

  • 轮询
  • key指定
  • 自定义策略
  • 指定 Partiton 发送

Kafka 支持读写分离吗,为什么?

读写分离有两个缺点

  • 数据不一致的问题
  • 延时问题
    kafka不支持读写分离

Kafka 如何实现负载均衡?

  • kafka 独特的架构方式可以通过主写主读来实现负载均衡

Kafka 的可靠性是怎么保证的?

  • acks
    • acks = 1,默认为1。生产者发送消息,只要 leader 副本成功写入消息,就代表成功
    • acks = 0。生产者发送消息后直接算写入成功,不需要等待响应
    • acks = -1 或 acks = all。生产者发送消息后,需要等待 ISR 中的所有副本都成功写入消息后才能收到服务端的响应
  • 我们可以通过同步或者异步获取响应结果,失败做重试来保证消息的可靠性.
  • 手动提交位移
  • 通过副本LEO来确定分区HW

kafka为什么会重复消费消息?

  • 在kafka提交offset的时候,可能由网络延迟或者某些原因导致offset没有同步,导致其他consumer消费了已经消费的消息.

如何保证kafka消息被顺序消费

  • 如果消息需要被顺序消费,就需要将这类消息指定发送到一个partition中.

副本 leader 是怎么选举的

  • 优先副本选举:优先副本就是说在 AR 集合中的第一个副本

如何增强消费者的消费能力?

  • 可以考虑增加 topic 的分区数,并且同时提升消费组的消费者数量,消费者数=分区数
  • 如果是消费者消费不及时,可以采用多线程的方式进行消费,并且优化业务方法流程

Kafka 控制器是什么,有什么作用?

> 在 Kafka 集群中会有一个或多个 broker,其中有一个 broker 会被选举为控制器,它负责管理整个集群中所有分区和副本的状态,Kafka 集群中只能有一个控制器

  • 当某个分区的 leader 副本出现故障时,由控制器负责为该分区选举新的 leader 副本;
  • 当检测到某个分区的 ISR 集合发生变化时,由控制器负责通知所有 broker 更新其元数据信息
  • 当为某个 topic 增加分区数量时,由控制器负责分区的重新分配。

Kafka 为什么这么快?

  • 顺序读写
  • Page Cache
  • 零拷贝
  • 分区分段+索引
  • 批量读写
  • 批量压缩

什么情况下 kafka 会丢失消息?

Kafka 有三次消息传递的过程:生产者发消息给 Broker,Broker 同步消息和持久化消息,Broker 将消息传递给消费者。
这其中每一步都有可能丢失消息

  • 生产者发送数据

    • 当 acks 为 0,只要服务端写消息时出现任何问题,都会导致消息丢失
    • 当 acks 配置为 1 时,生产者发送消息,只要 leader 副本成功写入消息,就代表成功。这种方案的问题在于,当返回成功后,如果 leader 副本和 follower 副本还没有来得及同步,leader 就崩溃了,那么在选举后新的 leader 就没有这条消息,也就丢失了
  • Broker 存储数据

    • kafka 通过 Page Cache 将数据写入磁盘,Page Cache 就是当往磁盘文件写入的时候,系统会先将数据流写入缓存中,但是什么时候将缓存的数据写入文件中是由操作系统自行决定。所以如果此时机器突然挂了,也是会丢失消息的
  • 消费者消费数据

    • 在开启自动提交 offset 时,只要消费者消费到消息,那么就会自动提交偏移量,如果业务还没有来得及处理,那么消息就会丢失。

Kafka的哪些场景中使用了零拷贝

  • 基于mmap的索引
  • 日志文件读写所用的TransportLayer
http://www.skylitedrivein.com/news/356.html

相关文章:

  • 我的网站现在没有排名_我想问是不是花钱做百度推广就会有排名安卓优化大师老版本
  • 用scala做的网站sem专员
  • 医药企业建设网站需要什么seo百度排名优化
  • 买手表去哪个网站买是正品的郑州高端网站制作
  • 深圳专业网站建设制作价格2021年网络营销考试题及答案
  • php网站开发cms外贸业务推广
  • 安徽省工程建设监理协会网站seo关键词优化的技巧
  • 做名人故居的网站多少钱自己的网站怎么样推广优化
  • 查看网站dns服务器java培训机构
  • 深圳市住房和建设局官网站首页平面设计正规培训机构
  • 电商网站怎么做CSSseo现在还有前景吗
  • 如何做英文网站推广百度上海推广优化公司
  • html5 可以做网站吗建站小程序
  • 做张网站banner多少钱百度知道个人中心
  • 苹果销售网站怎么做的从事网络销售都有哪些平台呢
  • 高安网站制作提高百度搜索排名工具
  • 佛山新网站制作机构网店推广平台有哪些
  • 做网站打开图片慢seo入门
  • 做美食推广的网站有哪些今天的最新消息新闻
  • 一级域名的免费网站seo如何去做优化
  • 室内设计效果图手绘图片大全seo查询工具网站
  • html5在线编辑器青岛官网seo公司
  • 网站内容与栏目设计爱站网长尾关键词挖掘工具下载
  • 社保网站哪里做转入小广告设计
  • 游戏直播网站怎么做东莞建设企业网站
  • 互联网营销常用网站seo优化招聘
  • 顺德移动端网站建设网络推广引流是做什么的
  • 如何做实体店的网站怎么有自己的网站
  • 网页美工设计高跟鞋seo优化网络公司排名
  • wordpress如何仿站十大免费网站推广入口