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

免费域名模板建站网站建设设计

免费域名模板建站,网站建设设计,菠萝之乡网站建设,微信视频制作小程序哈喽大家好#xff0c;我是咸鱼 最近这段时间比较忙#xff0c;将近一周没更新文章#xff0c;再不更新我那为数不多的粉丝量就要库库往下掉了 T﹏T 刚好最近在学 Kafka#xff0c;于是决定写篇跟 Kafka 相关的文章#xff08;文中有不对的地方欢迎大家指出#xff09;…哈喽大家好我是咸鱼 最近这段时间比较忙将近一周没更新文章再不更新我那为数不多的粉丝量就要库库往下掉了 T﹏T 刚好最近在学 Kafka于是决定写篇跟 Kafka 相关的文章文中有不对的地方欢迎大家指出 考虑到有些小伙伴可能是第一次接触 Kafka 所以先简单介绍一下什么是 Kafka 吧 Kafka 介绍 Kafka 是一个高吞吐的分布式消息系统不但像传统消息队列RaabitMQ、RocketMQ等那样能够【异步处理、流量消峰、服务解耦】 还能够把消息持久化到磁盘上用于批量消费。除此之外由于 Kafka 被设计成分布式系统吞吐量和可用性大大提高 Kafka 角色 kafka 客户端 生产者producer也叫发布者负责创建消息消费者consumer也叫订阅者负责消费读取消息 Kafka 服务端broker leader对外提供读写服务follower不提供服务负责向 leader 同步数据 Topic主题和 partition分区 topic 就是消息发布的地方消费者通过订阅 topic 来消费到对应的消息 为了提高吞吐量实现 topic 的负载均衡Kafka 在 topic 下又引用了分区partition的概念每个 topic 可以被划分成多个分区 分区允许消息在 Topic 下水平分割和存储每个分区都是一个有序且不可变的消息队列消费者可以以并行的方式消费同一个 topic 中的消息 PStopic 是逻辑上的概念消息真正是存储到 partition 中去的 例如某个 topic 下被划分成 n 个分区那么这个 topic 的并发度就提高 n同时可以支持 n 个 consumer 并行消费该 topic 中的消息 log日志 对于每一个 topic Kafka 都会维护一个分区日志 每个分区都是一个有序的、不可变的消息队列且可以持续地添加消息。消息在分区中分配了唯一的序列号被称为偏移量Offset offset 用来唯一的标识分区中每一条记录 Kafka 会保留所有分区中的消息不会自动删除消息。消息的保留策略由 Kafka 配置参数控制消息可以在一定时间或达到一定大小后过期过期的消息会被删除 消费者在 Kafka 中只保留自己的 Offset用于标识它在分区中的位置。通常情况下当 消费者消费消息时它的 Offset 会线性增加表示它已经消费了这些消息 消费者可以选择将 Offset 重置为更旧的值从而重新开始读取消息 每个消费者实例唯一负责一个分区Kafka 只保证分区内的记录是有序的而不保证主题中不同分区的顺序 Kafka 集群 Kafka 是分布式架构有集群cluster的概念 Kafka 中的一个实例被称为 broker它接收生产者的消息并存入磁盘消费者连接 broker 消费消息 多个 broker 组成一个 Kafka cluster集群内某个 broker 会成为集群控制器cluster controller负责管理整个 Kafka 集群包括分配分区给 broker监控 broker 等 分区被复制成了多个副本replica然后均分在不同的 broker 上 其中一个副本 Leader其他的是 Follower 创建副本的单位是 topic 的 分区 正常情况下每个分区都有一个 leader 和零或多个 followers 。这样即使某个 broker 发生故障其他 broker上的副本仍然可以继续提供服务 那如何将所有的副本均匀分布在不同 broker 上呢 分配副本的算法如下 将所有 broker假设共 n 个 broker和待分配的分区排序将第 i 个分区分配到第i mod n个 broker上将第 i 个分区的第 j 个副本分配到第(i j) mode n个 broker 上 如何实现数据同步 我们先来看下 Kafka 中的 ISRIn-Sync Replicas 机制 既然每个 leader 下面都有至少一个 follower于是便有了 ISRISR 就是 Kafka 动态维护的一组同步副本集合 ISR 中所有的 follower 都与 leader 保持同步状态而且 leader 也在 ISR 列表中只有在自己 ISR 列表中的副本才能参与 leader 竞选 当生产者写入数据时leader 更新数据follower 是怎么知道 leader 更新然后去同步数据的呢 follower 会通过定期向 leader 发送 fetch 请求来实现数据同步这个是由 fetcher 线程来负责的 当一个副本被选举成为 follower 后会启动副本的 fetcher 线程随后 Follower 会定期向 Leader 发送心跳请求以保持连接并发送 fetch 请求来获取最新的数据。 如果 follower 发现自己的 LEOLog End Offset日志结束偏移量与 Leader 的 LEO 有差距时会触发同步数据请求以便将自身日志同步至 Leader 的对应位置确保与 Leader 的数据保持一致 如果一个 follower 在指定时间内配置字段为 replica.lag.time.max.ms没有发送 fecth 请求或者没有追上 leader 的 LEO就会从 ISR 中移除 最后总结一下 Kafka 中的 topic 是逻辑概念每个 topic 可以被划分为多个分区而分区才是存储消息的实体每一个分区会被复制成多个副本然后选取其中一个副本当作 leader剩下的则是 followerfollower 会定期去向 leader 发送 fetch 请求来保证数据的同步leader 不会关心 follower 的数据是不是同步好了的只要你在指定时间内没有找我来 fetch 我就把你从 ISR 中剔除出来
http://www.hkea.cn/news/14306454/

相关文章:

  • 网站的seo如何设计学校网站信息化建设工作心得
  • 网站建设相关的网站成品网站软件
  • 宜春网站建设公司微信开放平台怎么解除绑定
  • 工作室网站域名装饰工程包括哪些项目
  • 网站运营方案模板wordpress盈利博客
  • 高级营销型网站建设开发公司绩效考核评分细则
  • codeigniter 手机网站开发国土资源网站建设方案
  • 建立网站多少钱百度关键词搜索次数
  • 张家港安监站网址黑帽seo优化软件
  • 网站建设移动网络公司4001688688人工服务
  • 行情软件app网站大全下载常州网站建设公司哪个好
  • 机构编制网站建设广西建设网注册中心
  • 建设工程职称论文查询网站章丘区当地网站建设哪家好
  • 批量爆破wordpress后台密码seo排名优化排行
  • seo站长工具查询系统广州网站设计公司vi设计公司
  • 网站建设伍金手指下拉9卡盟平台官网
  • 免费图标下载网站凡客诚品官方商城
  • 无锡新区网站建设中国城乡建设经济研究所 网站
  • 网站上的vr全景是怎么做的东莞大型网站建设
  • 抄袭别人网站的前端代码合法吗怎样做网络推广教学设计
  • 济南做网站哪里便宜wordpress 终极优化
  • 企业网站建设时间表wordpress官方插件库
  • 做网站的项目流程帮客户做网站内容
  • 普工找工作哪个网站好广州网站快速制作
  • 建站之星授权南昌哪家网站建设最好
  • 惠州企业网站建设选哪家购物网站用那个软件做
  • 文化馆网站建设的意义东营经济技术开发区
  • 商务网站建设教程怎样换wordpress域名
  • 如何做个网站做cpawordpress Cute
  • 商标查询系统官网优化二十条