You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spyder启动命令为何创建两个Spark Web UI?求验证及解决

Spyder中SparkSession启动脚本触发双Web UI问题

现象

  • 在Spyder的IPython控制台启动命令中配置以下代码:
    from pyspark.sql import SparkSession ; spark = SparkSession.builder.appName("SparkExamples.com").getOrCreate()
    
    执行后会在4040和4041端口同时启动两个Web UI;
  • 注释该启动命令,手动在IPython提示符执行相同代码时,仅会在4040端口生成一个Web UI。

关闭UI的行为差异

  • 执行spark.stop()只能关闭第二个UI;
  • 执行sys.exit()(不重启内核)会保留第一个UI持续运行;
  • 只有执行exit()重启内核,才能彻底关闭第一个UI。

疑问与环境

仅打开一个Spyder控制台,理论上应只有一个内核,为何启动命令会创建两个Web UI?

环境:Windows 10,通过Anaconda安装Python、Spyder、Java及PySpark。希望其他使用Spyder/Spark环境的用户能验证该现象是否普遍存在。


心跳超时导致需频繁重启IPython控制台的问题

问题表现

遇到心跳超时警告,伴随的副作用是调用其他命名空间的对象时出现如下错误:

ConnectionRefusedError: [WinError 10061] No connection could be made because the target machine actively refused it

代码示例

  • 可正常运行:
    spark.read? # 后缀"?"在Spyder中调出文档字符串
    
  • 无法运行:
    spark.read.csv?
    df.show() # df为DataFrame对象
    df = spark.read.csv(
       r"C:\cygwin64\home\User.Name\tmp\zipcodes.csv",
       header=True )
    spark.stop()
    

临时解决方案

执行exit()重启内核并重新创建所有对象后,上述命令可恢复正常。


内容的提问来源于stack exchange,提问作者user2153235

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 04:07:42