Loading

摘要: 1. 通信框架功能设计 1.1 功能描述 通信框架承载了业务内部各模块之间的消息交互和服务调用,它的主要功能如下: 基于 Netty 的 NIO 通信框架,提供高性能的异步通信能力; 提供消息的编解码框架,可以实现 POJO 的序列化和反序列化; 消息内容的防篡改机制 提供基于 IP 地址的白名单接 阅读全文
posted @ 2023-02-12 23:01 tree6x7 阅读(123) 评论(0) 推荐(0) 编辑
摘要: # 1. ZkServer 选举源码 ![](https://img2023.cnblogs.com/blog/1104875/202302/1104875-20230212161737712-14814005.png) ## 1.1 选举准备 ![](https://img2023.cnblogs 阅读全文
posted @ 2023-02-12 16:19 tree6x7 阅读(36) 评论(0) 推荐(0) 编辑
摘要: ![](https://img2023.cnblogs.com/blog/1104875/202302/1104875-20230212161035893-519576435.png) # 1. 基础算法 ## 1.1 Paxos 算法 > 一种基于消息传递且具有高度容错特性的一致性算法。 > 摘自 阅读全文
posted @ 2023-02-12 16:16 tree6x7 阅读(57) 评论(0) 推荐(0) 编辑
摘要: 1. 集群部署 1.1 集群安装 (1)集群规划 在 hadoop102、hadoop103 和 hadoop104 三个节点上都部署 Zookeeper。 (2)解压安装 在 hadoop102 解压 Zookeeper 安装包到 /opt/module/ 目录下,修改 apache-zookee 阅读全文
posted @ 2023-02-12 15:59 tree6x7 阅读(53) 评论(0) 推荐(0) 编辑
摘要: # 1. 概述 Zookeeper 是一个开源的分布式的、为分布式框架提供协调服务的 Apache 项目。 ## 1.1 工作机制 Zookeeper 从设计模式角度来理解: 是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生 阅读全文
posted @ 2023-02-12 15:54 tree6x7 阅读(41) 评论(0) 推荐(0) 编辑
摘要: # 1. 工作流程 ![](https://img2023.cnblogs.com/blog/1104875/202302/1104875-20230212141211327-1315440536.png) ## 1.1 消费者组概述 Consumer Group(CG):由多个 consumer 阅读全文
posted @ 2023-02-12 14:17 tree6x7 阅读(40) 评论(0) 推荐(0) 编辑
摘要: # 1. 工作流程 ## 1.1 Zk 存储的信息 ![](https://img2023.cnblogs.com/blog/1104875/202302/1104875-20230212140242669-119050085.png) ## 1.2 总体工作流程 **step1~6:** ![]( 阅读全文
posted @ 2023-02-12 14:09 tree6x7 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 1. 存储与读写 1.1 Kafka 存储机制 由于生产者生产的消息会不断追加到 log 文件末尾,为防止 log 文件过大导致数据定位效率低下,Kafka 采取了〈分片〉和〈索引〉机制,将每个 Partition 分为多个 Segment。 每个 Segment 对应两个文件 ——「.index」 阅读全文
posted @ 2023-02-12 13:48 tree6x7 阅读(60) 评论(0) 推荐(0) 编辑
摘要: # 1. 发送消息流程 ## 1.1 整体架构 整个生产者客户端由两个线程协调运行,这两个线程分别为主线程和 Sender 线程(发送线程)。在主线程中由 KafkaProducer 创建消息,然后通过可能的拦截器、序列化器和分区器的作用之后缓存到消息累加器(RecordAccumulator,也称 阅读全文
posted @ 2023-02-12 13:05 tree6x7 阅读(24) 评论(0) 推荐(0) 编辑
摘要: # 1. 消息队列 一个消息系统负责将数据从一个应用传递到另外一个应用,应用只需关注于数据,无需关注数据在两个或多个应用间是如何传递的。分布式消息传递基于可靠的消息队列,在客户端应用和消息系统之间异步传递消息。 有两种主要的消息传递模式:点对点模式、发布-订阅模式。Kafka 就是一种“发布-订阅” 阅读全文
posted @ 2023-02-12 12:54 tree6x7 阅读(28) 评论(0) 推荐(0) 编辑