面临问题:(“连接中断:ConnectionResetError(104,'连接由对等方重置')”,ConnectionResetError(104,'连接由对等方重置'))
环境:PCF(操作系统:Linux,实例具有3GB RAM和8核CPU)
用例:需要将较大的文本文件转换为Dataframe(20k,204),并需要执行一些操作最终另存为excel。
我在 200 个文件中尝试了大约 20,000 行文本,试图将所有 200 个文本文件转换为 Excel。
代码执行预计时间为:5 分钟。
在 Flask 服务器上运行的 Python 代码。
通过 $ajax() 异步调用此脚本。
浏览器:Chrome
我已经完成了多重处理,
pool = Pool(processes=os.cpu_count()//2,maxtasksperchild=1) s=pool.map(MainFunction, MainListFiles) pool.close() pool.join() del pool pool=None e=str(time.time()-st) s.append(e)
使用jquery Ajax调用python脚本:
$.ajax({
type: 'POST',
url: PythonUrl,
data: $.param({path:'PythonCode',pythonfile:filename,data:rand}),
beforeSend: function()
{
$('#loader').css('display','block');
},
success: function(data)
{
console.log(data)
$('#loader').css('display','none');
modal.style.display = "block";
document.getElementById('p1').innerHTML = data;
},
error: function(x, t, m) {
if(t==="timeout") {
alert("got timeout");
} else {
alert(t);
}
}
});
我研究过ajax在promise解析之前不会关闭连接,对吧?
那么什么可能导致这个错误呢?连接被对等方重置,到底是什么意思?
我看到一些线程有同样的错误,但他们错过了 pool.join() 所以 mp 试图在一些工作人员正在处理时关闭池。但我已经正确加入了池。
注意: 但有一件事是,在出现此异常后,我再次运行相同的脚本,它成功运行并给出了正确的响应。
所以错误是由于:
这真的让我害怕!因此,如果不理解这一点,就无法将此代码投入生产。因此,如果有人能就此向我提出建议,那就太好了。
这更像是一种解决方法,而不是修复......
使用 conda env,我遇到了 conda cryptography=41.0.2.
的问题我对 conda 没有这个问题 cryptography=3.4.7
我的环境是我的(基础)