问题标签 [flask-caching]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
71 浏览

python - Flask Endpoint 返回 404 未找到

我正在尝试使用 Flask 应用程序返回一些使用 Flask 缓存缓存的 json 数据。

这个端点有效,以及烧瓶缓存来缓存,get_payload而无需重新运行该函数:

但是这个端点根本不起作用,应用程序将返回一个URL NOT FOUND

我对导致这种情况的烧瓶缓存有什么问题吗?有效的端点完成了我期望烧瓶缓存所做的只是get payload每 60 秒运行一次该函数,但我无法弄清楚为什么它/payload/hourly根本不起作用。它几乎就像烧瓶缓存只支持一个端点,除非我做错了什么。

这是任何人都可以尝试的 Flask 应用程序,它只是组成数据,但我没有在 localhost 上运行它。

EDIT,用于测试 Flask App Endpoints 的屏幕截图,此 GET 请求有效:

在此处输入图像描述

这个端点不起作用,有什么想法可以尝试吗? 在此处输入图像描述

0 投票
1 回答
78 浏览

flask - 如何使用烧瓶应用配置 Redis_sentinel?

目前我正在为我的 Flask 应用程序使用 Redis,并且配置如下。

) 然后将其传递给缓存配置。

}

如果我想将配置更改为 redis_sentinel 而不是 Redis 以获得更好的可用性。我无法理解 Flask-cachig 文档中提到的配置。

以及如何与SSl一起配置?我是 redis 新手,并没有在网上找到任何有用的资源。

0 投票
0 回答
44 浏览

python - Flask:管理应用上下文和装饰器

我有这个烧瓶缓存的小例子:

测试.py:

在一个文件中完美工作。现在,我想在外部库中输出 _add 函数。

这给了我:

测试2.py:

./external/example.py

如何在 ./external/example.py 中使用 cache.memoize 装饰器?

我明白为什么会出现错误:RuntimeError:在应用程序上下文之外工作。

但我不知道如何解决这个问题。我有很多功能(需要使用外部库)并保留在所有外部库中使用 cache.memoize 装饰器的可能性。

0 投票
1 回答
17 浏览

python - 在我的烧瓶应用程序中使用 redislite 时出现错误 99

在我的烧瓶应用程序中,我使用了一个 docker redis 容器(通过烧瓶缓存),所以我在配置文件中指定了必要的参数。

对于某些测试,虽然我使用的是 redislite,但我从配置文件中删除了HOSTand 。PORT所以我希望应用程序会尝试连接到 redislite 套接字。但是,我收到此消息:

任何帮助,将不胜感激。谢谢!

0 投票
1 回答
36 浏览

python - 带有`FileSystemCache`的第一个字节(TTFB)烧瓶的缓慢时间

在更改我的 linux 服务器后,我在 Flask 中的 Web 应用程序面临缓慢的首字节时间 (TTFB)。问题似乎只在第一次访问或缓存过期(5 分钟)后出现。有时 TTFB 达到 16 秒。

我通过以下方式确认了问题:

  1. Gunicorn日志(在调试模式下运行并指定所有日志)
  2. Nginx日志(使用自定义日志upstream_response_timerequest_time
  3. 在开发模式下运行Flask 。

我验证了在同一台服务器上运行的问题不存在(一些毫秒的TTFB),例如:

  1. Python单行网络服务器
  2. 'Hello world'烧瓶应用

当服务器收到请求时查看htop我发现有时 gunicorn工作人员进入Uninterruptible Sleep (D) State然后返回。

总而言之,我怀疑这与Flask-Caching包有关,特别是FileSystemCache选项。由于尝试了“SimpleCache”缓存选项,问题就消失了(但缓存并不真正适用于Gunicorn多个工作人员)

现在我的 app.config 就像下面这样(在另一个 ubuntu-server 上完美地工作):

我希望有人能指出我在这里缺少的东西。

0 投票
1 回答
38 浏览

python - 使用蓝图在 Quart 中导入 Flask 扩展

我目前正在构建一个基本应用程序,在该应用程序中,我使用连接到托管 Raspberry Pi 的传感器进行测量。为此,我决定使用 Quart,因为它允许我在后台运行它们。我目前正在尝试使用缓存,以便 JS 前端可以使用数据(例如,用于下载、实时绘图)。websockets 和其他请求。我想使用 Quart 根据pgjones支持的扩展 Flask-Caching 来做到这一点。但是,一旦我尝试初始化扩展,我就会得到

追根溯源

在我的应用工厂。这是应用工厂

和运行文件代码

CACHE属性Config由字典给出{'CACHE_TYPE': 'FileSystemCache'}

我尝试了其他选项,例如cache = Cache(app, config=config.CACHE)初始化扩展,但都没有工作......

奖励问题:烧瓶文档中提到的缓存类型有什么区别?

谢谢!