Jupyter并发测试以后出现EOFError marshal data too short

Jupyter 并发测试以后出现EOFError: marshal data too short

背景

由于项目需求需要用户能进行网页在线运行python代码程序,调研后决定使用Jupyter的服务接口实现此功能,目前使用docker进行容器化部署,测试针对次服务进行并发测试。测试并发过程中,导致kernels已经达到顶峰值,然后我暴力关掉所有的kernels以后,再进行使用的时候,出现EOFError: marshal data too short

现象

分析与解决方案

通过异常日志分析,查到这篇文章https://stackoverflow.com/questions/50391941/eoferror-marshal-data-too-short说是要pyc文件损坏,需要删除`__pycache__`文件夹下的文件。

从日志分析需要删除ipykernel、IPython、jedi下的缓存文件,使用一下命令查询并删除

shell 复制代码
find /usr/local/lib/python3.11/dist-packages/ipykernel -name __pycache__ | grep IPython -exec rm -r {} +

删除完后发现还是解决不了问题。最后想了一个暴力的解决方案,直接删除dist-packagess 目录下的所有的__pycache__文件夹。

shell 复制代码
find . -type d -name "__pycache__" -exec rm -r {} +

再尝试运行一下,完美解决问题!

相关推荐
破茧蝴蝶5 小时前
Python分布式爬虫完整教程
开发语言·python
benchmark_cc5 小时前
量化系统架构设计:为什么应该将数据获取与策略逻辑解耦?
python·数据分析·pandas·量化交易·股票数据·quantdash
凤山老林5 小时前
Spring Boot 启动冲刺:耗时剖析、懒加载策略与事件驱动初始化优化
spring boot·后端·python
小白快快跑哦5 小时前
python-字符串全解(六):正则表达式-逻辑运算或
python·正则表达式·字符串·逻辑运算
Thinker QAQ6 小时前
并发编程(九):BlockingQueue 与 Channel——语言层的原子性、可见性与有序性
java·python·go·并发编程·channel·blockingqueue·message passing
道满科技6 小时前
Function Calling 参数总出错?只修参数就行
linux·windows·python
霸道流氓气质7 小时前
RAG 可观测性与生产监控实战:四层遥测模型、五大仪表盘与 OpenTelemetry 全链路追踪的 Java 生产级实现
java·人工智能·python
ch6239 小时前
《AI 辅助编程实战:从零跑通一个 Excel 报表生成脚本的踩坑与复盘》
人工智能·python
import_random9 小时前
[python]conda和pip(区别和联系2)
python
Aurorar0rua9 小时前
CS50 x 2024 Notes Python - 01
开发语言·python·学习方法