Confluent Schema Registry 如何管理本地缓存
How local cache is managed by Confluent Schema Registry
我们计划通过 Kafka 推送数百万条消息,使用架构注册表 (SR) (Confluent) 来避免始终发送完整架构。
这张图片中的架构是相关的:
事实上,我们希望避免在生产者想要发送一条消息或消费者将收到一条消息时一直调用 SR。
所以我想在这里谈谈由 AvroSerializer 和 AvroDeserializer 管理的 "local" 缓存。我认为已经实现了这一点的贡献者应该把这项工作做得很好。
但是由于牵连调用的数量,我只想确定我在上面的架构中用红色写的是什么
我没有找到任何管理此 "local" 缓存的功能,您知道检查其内容、大小的方法吗...
非常感谢!
好吧,最后我自己测试了这个架构:
ubuntu 下的 2 个 VMBox,一个用于 producer/broker/consumer,另一个用于模式注册表(汇合)。
我还在 bot VM 中设置了 WireShark TCP 数据包分析器。
当我为一条消息或数千条消息启动生产者时,我们交换的数据包数量相同:
设置一些睡眠(在 Java 中)我可以看到仅在必须发送第一条消息时才调用模式注册表,而不是在创建生产者时调用。
希望这可以帮助...
我们计划通过 Kafka 推送数百万条消息,使用架构注册表 (SR) (Confluent) 来避免始终发送完整架构。
这张图片中的架构是相关的:
事实上,我们希望避免在生产者想要发送一条消息或消费者将收到一条消息时一直调用 SR。
所以我想在这里谈谈由 AvroSerializer 和 AvroDeserializer 管理的 "local" 缓存。我认为已经实现了这一点的贡献者应该把这项工作做得很好。
但是由于牵连调用的数量,我只想确定我在上面的架构中用红色写的是什么
我没有找到任何管理此 "local" 缓存的功能,您知道检查其内容、大小的方法吗...
非常感谢!
好吧,最后我自己测试了这个架构: ubuntu 下的 2 个 VMBox,一个用于 producer/broker/consumer,另一个用于模式注册表(汇合)。
我还在 bot VM 中设置了 WireShark TCP 数据包分析器。
当我为一条消息或数千条消息启动生产者时,我们交换的数据包数量相同:
设置一些睡眠(在 Java 中)我可以看到仅在必须发送第一条消息时才调用模式注册表,而不是在创建生产者时调用。
希望这可以帮助...