Flume 有几个第三方插件来支持 AMQP 源。 为什么我们要将消息发送到 rabbitmq 或 qpid 然后再发送到 flume 而不是直接发送到 flume ? 我错过了什么吗?
此外,在什么情况下我应该使用像 Qpid、rabbitMQ 这样的消息队列以及什么时候像 Flume 这样的东西? 我阅读了 Qpid , RabbitMQ 保证订购交付,这对我来说并不重要。 还有其他区别吗?
我们可以向正在运行的水槽代理动态添加 channel 和接收器吗?使用文件滚动接收器向源添加新 channel ,它不需要任何代码更改,只需更改 conf 文件并重新启动。有没有办法动态地做到这一点,即无需重新启动水槽代理
最佳答案
这基本上取决于您的用例。正如您所提到的,在您的用例中,有序交付并不重要,那么 Flume 可能会适合。由于此功能,Flume 实际上更快,并且它具有更便宜的容错设置。 Check this link了解更多详情。
此外,Flume 非常适合处理 Hadoop 环境(HDFS 作为接收器),因为它实际上是从 Hadoop 环境演变而来的。出于同样的原因,您还会看到用例,其中 RabbitMQ(作为源)消息正在通过 Flume 推送。
关于hadoop - 为什么 Flume 需要有 AMQP 源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18188505/