PySpark创建SparkSession时持续出现ConnectionRefusedError求助
解决SparkSession创建时的ConnectionRefusedError问题
你遇到的ConnectionRefusedError: [WinError 10061]是因为长时间闲置后,Spark关联的JVM进程已终止或失效,getOrCreate()方法尝试连接已不存在的进程导致的。以下是具体解决步骤:
显式终止并重建Spark会话
先清理现有会话和上下文,再重新创建新会话:from pyspark.sql import SparkSession # 清理残留会话/上下文 try: spark.stop() sc.stop() except NameError: pass # 重新初始化会话 spark = SparkSession.builder \ .master("local[*]") \ .appName("RecreatedSession") \ .getOrCreate()这样会强制启动新的JVM进程,避免连接失效的旧进程。
清理残留的Java进程
打开Windows任务管理器,找到所有java.exe或spark-submit.exe进程,手动结束后重新运行代码。长时间闲置的Spark进程可能被系统自动回收,但进程残留会导致连接异常。配置Spark超时参数
创建会话时添加超时配置,延长闲置连接的存活时间:spark = SparkSession.builder \ .master("local[*]") \ .appName("ConfiguredSession") \ .config("spark.network.timeout", "300s") \ .config("spark.executor.heartbeatInterval", "60s") \ .getOrCreate()调整网络超时和心跳间隔,减少因长时间无交互导致的连接断开。
重启Jupyter内核
在Jupyter Notebook界面点击「Kernel」→「Restart Kernel」,清除所有残留的运行状态和进程后,重新执行创建会话的代码。
内容的提问来源于stack exchange,提问作者Sneha Kumari
相关产品推荐
相关产品推荐

