如何加快端点的加载速度?

问题描述 投票:0回答:1

我是沙发基地的新手,也许是前端编程。我有一堆代码创建了couchbase db的对象,然后从db中获取视图。问题是它从数据库开始的时间开始获取所有数据。我的重点是加快速度,以便在现场更快地显示。这是一段代码

@app.route("/all-schools", methods=['GET'])
def past_school_schedules():

    return render_template('schb.get_view('cloud', 'christmast-past'))

因此,一旦couchbase获取所有视图并显示它需要30-40秒..这是巨大的,因为它呈现温度

python flask couchbase couchbase-view
1个回答
1
投票

使用分页以小批量呈现数据,根据您的要求确定页面大小,以便在第一次调用时在UI上处理/显示足够的数据,并使用next_page_url进行后续调用以获取更多数据。

Flask-SQLAlchemy使用paginate()查询方法本机支持分页

可以在Flask-SQLAlchemy的任何查询对象上调用paginate方法。它需要三个参数:

  1. 页码,从1开始
  2. 每页的项目数
  3. 错误标志。如果为True,当请求超出范围的页面时,404错误将自动返回给客户端。如果为False,则将返回超出范围页面的空列表。

paginate的返回值是Pagination对象。该对象的items属性包含所请求页面中的项目列表。

以下是使用分页的更新代码。

@app.route("/all-schools-schedule/christmas-past", methods=['GET'])
def past_school_schedules():
    # this creates couchbase object
    cb = get_db().paginate(
        page, POSTS_PER_PAGE, False)
        return render_template('school_schedule.html', past=cb.items)

希望这可以帮助!

© www.soinside.com 2019 - 2024. All rights reserved.