redis和kafka的区别

bksxznpy  于 2021-06-07  发布在  Kafka
关注(0)|答案(2)|浏览(556)

关闭。这个问题需要更加突出重点。它目前不接受答案。
**想改进这个问题吗?**通过编辑这篇文章更新这个问题,使它只关注一个问题。

4个月前关门了。
改进这个问题
redis可以像kafka一样作为实时的pub sub。
我不知道什么时候用哪一个。
任何用例都会有很大的帮助。

piah890a

piah890a1#

redis pub-sub主要是一个火而忘却的系统,您生成的所有消息都将一次传递给所有的消费者,而数据则不存在任何地方。关于redis,您的内存有限制。此外,生产者和消费者的数量也会影响redis的性能。
另一方面,kafka是一种高吞吐量的分布式日志,可以用作队列。在这里,任何数量的用户都可以生产,消费者可以随时消费。它还为通过队列发送的消息提供持久性。
最终拍摄:
使用redis:
如果你想要一个“火与忘”的系统,你产生的所有信息都会立即传递给消费者。
如果速度是最重要的。
如果你能忍受数据丢失。
如果不希望系统保留已发送的消息。
要处理的数据量并不大。
使用Kafka:
如果你想要可靠性。
如果您想让您的系统拥有一份即使在消费之后也已发送的消息副本。
如果你不能忍受数据丢失。
如果速度不是一个大问题。
数据量很大

wgx48brx

wgx48brx2#

redis5.0+版本提供了流数据结构。它可以被视为具有交付保证的日志数据结构。它提供了一组阻塞操作,允许消费者等待生产者添加到流中的新数据,此外,还提供了一个称为消费者组的概念。
基本上,流结构提供了与Kafka相同的能力。
这是文件https://redis.io/topics/streams-intro
有两个最流行的java客户机支持这个特性:redisson和jedis

相关问题