【问题标题】:Error connecting to localhost:8060: java.net.ConnectException: Connection refused连接到 localhost:8060 时出错:java.net.ConnectException:连接被拒绝
【发布时间】:2015-03-14 16:44:44
【问题描述】:

我是 Apache Spark 的新手。

我在我的 UDP 端口 8060 接收数据,我想捕获它并执行 一些实时操作,我正在使用 Spark Streaming。尽管 代码似乎是正确的,我得到以下输出: https://gist.github.com/d34th4ck3r/0e88896eac864d6d7193

我正在使用以下命令:

mvn  -e -Dmaven.tomcat.port=8080 tomcat:run exec:java -Dexec.mainClass="twoGrams.Main"

另外,$netstat -pn | grep 8060 什么都不返回。因此港口是免费的。

例如,另一个系统在端口 8060 以 1;2;3;4.. 发送我的 UDP 数据,我想根据“;”来解析它并使用 Spark Streaming 实时打印 1 2 3 4..。

我认为问题可能是因为 Spark 的间隔时间 尝试连接端口太短,但我不知道如何更改它 如果这确实是问题所在。

【问题讨论】:

  • 我不清楚storm应该做什么,火花流应该做什么以及你想要实现什么。
  • @maasg 我打错了 Storm。我的意思是火花。我已相应地更正了问题并添加了一个示例。
  • 你能把代码也贴出来吗?
  • 这个“spark”东西是配置为在 8060 端口上运行,还是应该作为 Tomcat 中的应用程序提供,您似乎正在运行在 8080 上?
  • 嗨,我已经更新了我的 gist(gist.github.com/d34th4ck3r/0e88896eac864d6d7193) 以在编写自定义接收器和之后的日志后显示我的代码。它循环正常,但是当我将数据发送到端口时,它会停止循环并给出一些错误,我无法理解。

标签: java port bigdata apache-spark


【解决方案1】:

除非您修改了SocketInputDStream 的代码,否则它是creates a stream socket,即TCP 套接字。您需要一个数据报套接字 (UDP)。您需要创建自己的 SocketReceiver (see the guide)

【讨论】:

  • 嗨,我已经更新了我的 gist(gist.github.com/d34th4ck3r/0e88896eac864d6d7193) 以在编写自定义接收器和之后的日志后显示我的代码。它循环正常,但是当我将数据发送到端口时,它会停止循环并给出一些错误,我无法理解。
  • 作为you noticed,这是一个不同的问题。
猜你喜欢
  • 2011-07-26
  • 2017-08-10
  • 2023-03-21
  • 2015-05-18
  • 2018-06-10
  • 2014-05-17
  • 2013-11-05
  • 2015-09-09
相关资源
最近更新 更多