问题网页.py+mod\u wsgi文件上传

2024-04-25 04:27:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在研究一个网页.py上传文件的应用程序和我的部署有真正的问题。基本上,我想给用户一个'百分比上传',但这似乎是一个严重的混乱时,部署在mod\wsgi。主要上传如下:

out = open(path, 'wb', 1000)

    while (True):

        packet = fileU.file.read(1000)

        if not packet:

            break

        else:

            out.write(packet)
            sessions[code].progress += 1

    out.close()

“Session”是一个全局字典,它包含跟踪会话的对象。为了获得当前的进度,我通过客户机每秒的get请求获取给定会话的当前进度。在

目前的问题是,这只适用于小规模的上传。似乎任何超过100kb的内容都不会增加progress变量。如果放在循环之外(或者在调用read()之前)或者文件相当小,那么这个值肯定会增加。在

有没有可能wsgi正在为更大的文件打开新的线程,从而使我的全局计数器只在上载线程的本地?可能是别的什么。在


Tags: 文件用户pymod应用程序网页wsgiread
1条回答
网友
1楼 · 发布于 2024-04-25 04:27:06

你不能只使用一个全局字典。事实上,web服务器很可能正在使用一个单独的线程来处理以下请求,并且不能保证会话字典是相同的。尝试使用会话对象,它是网页.py. 它使用数据库或文件来存储可以跨不同线程或进程访问的数据。在

web.py session example

相关问题 更多 >