问题一:RabbitMQ的扩展和二次开发有什么挑战?
RabbitMQ的扩展和二次开发有什么挑战?
参考回答:
RabbitMQ是用Erlang开发的,这意味着对于非Erlang开发者来说,功能扩展和二次开发的代价可能很高。Erlang是一种相对小众的编程语言,可能需要额外的学习成本。
关于本问题的更多问答可点击原文查看:
https://developer.aliyun.com/ask/628361
问题二:Kafka在哪些场景下是业内标准?
Kafka在哪些场景下是业内标准?
参考回答:
Kafka在大数据领域的实时计算、日志采集等场景是业内标准。Kafka具有高性能、高可扩展性和高可靠性,能够处理大量实时数据流,因此在这些场景中成为事实性规范。
关于本问题的更多问答可点击原文查看:
https://developer.aliyun.com/ask/628362
问题三:RocketMQ比起Kafka有那些改进?
RocketMQ比起Kafka有那些改进?
参考回答:
借鉴了Kafka的设计并做了很多改进,几乎具备了消息队列应该具备的所有特性和功能。
• RocketMQ主要用于有序,事务,流计算,消息推送,日志流处理,binlog分发等场景。
• 经过了历次的双11考验,性能,稳定性可靠性没的说。
• java开发,阅读源代码、扩展、二次开发很方便。
• 对电商领域的响应延迟做了很多优化。
• 每秒处理几十万的消息,同时响应在毫秒级。如果应用很关注响应时间,可以使用RocketMQ。
• 性能比RabbitMQ高一个数量级。
• 支持死信队列,DLX 是一个非常有用的特性。它可以处理异常情况下,消息不能够被消费者正确消费而被置入死信队列中的情况,后续分析程序可以通过消费这个死信队列中的内容来分析当时所遇到的异常情况,进而可以改善和优化系统。
关于本问题的更多问答可点击原文查看:
https://developer.aliyun.com/ask/628363
问题四:Kafka有哪些值得提起的优势?有哪些需要注意的点?
Kafka有哪些值得提起的优势?有哪些需要注意的点?
参考回答:
Kafka
高可用,几乎所有相关的开源软件都支持,满足大多数的应用场景,尤其是大数据和流计算领域,
• Kafka高效,可伸缩,消息持久化。支持分区、副本和容错。
• 对批处理和异步处理做了大量的设计,因此Kafka可以得到非常高的性能。
• 每秒处理几十万异步消息消息,如果开启了压缩,最终可以达到每秒处理2000w消息的级别。
• 但是由于是异步的和批处理的,延迟也会高,不适合电商场景。
关于本问题的更多问答可点击原文查看:
https://developer.aliyun.com/ask/628364
问题五:Kafka提供了哪些主要的API?
Kafka提供了哪些主要的API?
参考回答:
Kafka提供了Producer API,允许应用程序将记录流发布到一个或多个Kafka主题;Consumer API,允许应用程序订阅一个或多个主题并处理为其生成的记录流;以及Streams API,允许应用程序充当流处理器,将输入流转换为输出流。
关于本问题的更多问答可点击原文查看: