zookeeper进行leader选举

时间:2021-01-09 10:14:33

一.如何进行leader选举

  1. 创建 /lj/producer和/lj/master/producer外层节点
  2. 创建临时顺序节点
  3. 判断自己是否是master节点(判断流程:遍历/lj/producer节点下的所有节点名称,选择尾数最小的作为master),如果是master节点,则在master/producer下面注册节点
  4. 监听master/producer目录,发现有节点remove,就触发新一轮的leader选举
  5. 生产者分发文件
    消费者节点注册在消费者群组节点下,每个消费者节点都有自己的吞吐量(cpu核心数),生产者从ftp下载文件后,计算每个consumer的吞吐量占总吞吐量的百分比,把这个百分比乘以下载的总文件个数分发到每个consumer上,再通知mq,每个consumer监听一个mq队列

生产者在监听到队列有任务到来时,把本地文件进行标准化,入库