mirror of
https://github.com/didi/KnowStreaming.git
synced 2025-12-24 03:42:07 +08:00
补充说明为什么删除Topic成功之后, 又立马出现的原因
This commit is contained in:
@@ -26,6 +26,7 @@
|
||||
- 14、集群的删除,是否会真正的删除集群?
|
||||
- 15、APP(应用)如何被使用起来?
|
||||
- 16、为什么下线应用提示operation forbidden?
|
||||
- 17、删除Topic成功,为什么过一会儿之后又出现了?
|
||||
|
||||
---
|
||||
|
||||
@@ -170,3 +171,27 @@ app在Logi-KM中可以近似理解为租户,或者是kafka里面的一个账
|
||||
|
||||
使用的是2.4.0之前的旧版本,旧版本存在缓存更新的BUG,建议升级至最新的版本,或者简单粗暴的就是重启一下KM。
|
||||
|
||||
|
||||
### 17、删除Topic成功,为什么过一会儿之后又出现了?
|
||||
|
||||
**原因说明:**
|
||||
|
||||
Logi-KM会去请求Topic的endoffset信息,要获取这个信息就需要发送metadata请求,发送metadata请求的时候,如果集群允许自动创建Topic,那么当Topic不存在时,就会自动将该Topic创建出来。
|
||||
|
||||
|
||||
**问题解决:**
|
||||
|
||||
因为在Logi-KM上,禁止Kafka客户端内部元信息获取这个动作非常的难做到,因此短时间内这个问题不好从Logi-KM上解决。
|
||||
|
||||
当然,对于不存在的Topic,Logi-KM是不会进行元信息请求的,因此也不用担心会莫名其妙的创建一个Topic出来。
|
||||
|
||||
但是,另外一点,对于开启允许Topic自动创建的集群,建议是关闭该功能,开启是非常危险的,如果关闭之后,Logi-KM也不会有这个问题。
|
||||
|
||||
最后这里举个开启这个配置后,非常危险的代码例子吧:
|
||||
|
||||
```java
|
||||
for (int i= 0; i < 100000; ++i) {
|
||||
// 如果是客户端类似这样写的,那么一启动,那么将创建10万个Topic出来,集群元信息瞬间爆炸,controller可能就不可服务了。
|
||||
producer.send(new ProducerRecord<String, String>("logi_km" + i,"hello logi_km"));
|
||||
}
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user