Confluent Schema Registry如何管理本地缓存

时间:2018-01-04 15:40:45

标签: java caching apache-kafka avro confluent-schema-registry

我们计划通过Kafka推送数百万条消息,使用Schema Registry(SR)(Confluent)不会一直发送完整的架构。

该图片中的架构相关: enter image description here

事实上,我们希望避免在制作人想要发送消息或消费者收到消息时一直打电话给SR。

所以我想在这里谈谈AvroSerializer和AvroDeserializer管理的“本地”缓存。我认为实施这一点的贡献者应该做得很好。

但是由于涉及的电话数量众多,我只想确定我在上述架构中用红色写的内容

我没有找到任何管理这个“本地”缓存的功能,你知道检查它的内容,大小......

非常感谢!

1 个答案:

答案 0 :(得分:1)

好吧最后我自己测试了这个架构: 2 ubuntu下的VMBox,一个用于生产者/经纪人/消费者,另一个用于模式注册表(汇合)。

我在bot VM中设置了一个WireShark TCP数据包分析器。

当我为一条消息或数千条消息启动我的生产者时,我们有相同的数据包计数:

enter image description here

设置一些睡眠(在Java中)我可以看到只有在必须发送第一条消息时才会调用Schema注册表,而不是在创建生成器时。

希望这可以帮助......