首页 > 解决方案 > 防止内存滥用

问题描述

我有带有视图功能的 Flask Web 应用程序,它需要一些获取参数。所以这是视图的代码:

@bp.route('/recent')
def recent():
    page = request.args.get('page', 1, type=int)
    torrents = Torrent.query.filter_by(approved=True).paginate(page, 
current_app.config['TORRENTS_PER_PAGE'], False)
    return render_template('torrents/recent.html', torrents=torrents.items)

第一个问题:OverflowError: Python int too large to convert to SQLite INTEGER当页面很大时。我可以用 try/except 块来解决这个问题,但是对吗?

第二个:当我向这个视图传递非常大的数字时,应用程序使用的内存每个请求都会增加 5MB。我可以按住 F5 键并用完内存。我怎样才能解决这个问题?

标签: pythonmemoryflaskflask-sqlalchemy

解决方案


推荐阅读