Kafka Topic删除背后的事

删除Topic需要考虑的事情?

  • Kafka的Topic删除存在的问题会比较多,建议先停止Kafka在删除;
  • 建议设置  auto.create.topics.enable = false(自动创建Topic,当producer没有停止,一直往删除的topic中写入数据)
  • 建议设置  delete.topic.enable = true 

 

删除方式:

  • 异步线程
  • 延时操作  

 

删除流程

 

 

大致流程介绍(不同版本的不一样):

第一步:

 

 

 

步骤解析:

  • 第一步:在Zookeeper创建一个delete_topics上注册节点变化的监听器(注册一个watch),当然会注册多个delete_topics;
  • 第二步:所有待删除的topic进入到删除队列(delete_topics),启动删除topic进程;
  • 第三步:删除topic的进程会以阻塞的状态运行,等待删除事件;

 

第二步:

 

 

 

 

 

步骤解析:

  • 第一步:执行删除命令,获取删除命令
  • 第二步:然后去zookeeper 的delete_topics 队列上注册一个临时节点;
  • 第三步:节点变化会触发监听器,然后唤醒删除的线程,有即触发第三列的删除操作;
posted @ 2020-11-01 18:14  KevinT·Mitnick  阅读(197)  评论(0)    收藏  举报