我对Kafka非常陌生,我正在研究Kafka是否可以用作实时消息代理而不是保留和发送。换句话说,它可以在没有保留的情况下执行基本的发布/订阅代理作业。
可以在Kafka Server配置中配置吗?
答案 0 :(得分:1)
我认为不可能实现这一目标。 Kafka与其他消息系统之间的主要区别之一是Kafka使用底层操作系统来处理存储。
我们做出的另一个非常规选择是明确避免 在Kafka层的内存中缓存消息。相反,我们依靠 底层文件系统页面缓存。 Whitepaper
因此Kafka会自动将消息写入磁盘,因此默认情况下会保留这些消息。这是卡夫卡的设计师做出的有意识的决定,他们认为值得做出权衡。
如果你问这个是因为你担心写入磁盘可能比保留在内存中要慢。
我们发现了生产和生产 消费具有与数据大小线性一致的性能, 高达数TB的数据。 Whitepaper
因此,您保留的数据大小不会影响系统的速度。