如何使用Websockets将Spark Streaming数据从服务器端发送到客户端?

时间:2014-06-10 21:34:49

标签: apache-camel activemq apache-storm apache-spark

在Apache Storm中,可以使用订阅一个ActiveMQ队列,其中风暴螺栓将其输出写入以推送这些输出因此,对于WebSockets,客户端可以在正确握手后获取这些流数据,如this website所示。

在使用Java中的Websockets将Spark Streaming数据从服务器端发送到客户端时,是否有类似的方法?如果没有,在Java或Scala中还有其他更好的解决方案吗?

谢谢。

1 个答案:

答案 0 :(得分:3)

我的解决方案是使用RabbitMQ。将Spark作为RabbitMQ队列的生产者。然后使用RabbitMQ Consumer将数据通过WebSockets写入HTML客户端。

最初的方法是使用Kafka。但是该框架存在严重缺陷。在(希望)修复这些错误之后,我将在0.8.2版本中重温Kafka。

顺便说一句,WebSockets解决方案是一个很大的问题。我最终在Netty上的一个小型图书馆上面编写了我自己的解决方案 - 因为现有的问题(socko,spray,play等)存在问题