python spark无法访问执行程序中的http服务器

时间:2016-11-03 18:51:07

标签: apache-spark pyspark

我正在使用Python Spark,我试图在每个分区中访问http。但它总是卡在那里,样本如下:

sc = SparkContext(appName="Fetch Http")
lines = sc.textFile("urls.txt", 10)
lines.map(fetch).saveAsTextFile("hdfs://node1/pages")

def fetch(url)
  http = urllib3.PoolManager()
  postResponse = http.request('POST',url,headers=JSON)
  jData = json.loads(postResponse.data)
  vectorStr = contertFun(jData)
  return vectorStr

1 个答案:

答案 0 :(得分:1)

您的代码存在一些问题:

  • 你没有提供超时,所以如果连接只是挂起它就会卡住
  • 你没有退货,所以没有什么可以保存
  • 您使用无法重复使用的连接池

总的来说,它没有多大意义。