gpt4 book ai didi

python - Flask: session 最大尺寸太小

转载 作者:行者123 更新时间:2023-11-28 16:19:45 29 4
gpt4 key购买 nike

我正在构建一个数据分析 Flask 应用程序,它接受大量用户输入,执行一些计算,然后将结果转换到各种网页。我正在使用 pandas Dataframe 来存储输入并执行计算。然后我将 DF 转换为字典并将其存储在 session 对象中。

由于 session 对象只能容纳 ~4k 字节这一事实,我遇到了问题。多个页面读取数据,因此我需要一种方法将如此大量的数据 (~5k-50k) 从一个请求传递到另一个请求( session 对象可以完美地完成,但需要较小的内存大小)。

我可以为 session 对象设置更高的存储限制吗(我想我不能,因为 4k 是 cookie 的限制, session 对象是一个 cookie)?或者还有什么我应该在这里做的事情(将字典存储在数据库中等)?

编辑:

我认为一个可行的替代方案是从数据库(在我的例子中是 mongodb)中获取数据,将其存储在局部变量中,然后将该变量直接传递给模板。这有负面影响吗?我可以将目录传递给模板的内存量是否有限制?请参见下面的示例:

@app.route('/results')
def results():
# get data I need from database (~5k-50k bytes)
data = mongo.db[collection_name].find_one({'key': 'query'})
# pass directory to template (instead of storing in session object)
return render_template('results_page.html', data=data)

最佳答案

是的,这听起来确实像是服务器端 session 的情况。
code snippets on the official site对于最流行的数据库。

这些应该不难迁移,因为它们使用与 cookie session 系统相同的 SessionMixin 接口(interface)。

一个更简单的方法可能是使用 Flask-KVSession ,它声称

Integration with Flask is seamless, once the extension is loaded for a Flask application, it transparently replaces Flask’s own Session management. Any application working with sessions should work the same with Flask-KVSession

关于python - Flask: session 最大尺寸太小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44013058/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com