问题标签 [flask-cache]
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.
flask - 如何使用烧瓶缓存和内存缓存?
下面是“简单”类型的烧瓶缓存示例,但我如何将烧瓶缓存与 memcache 一起使用?我需要你的帮助谢谢:)
python - 从视图控制烧瓶缓存
我想知道是否有办法允许用户使用Flask-Cache控制给定视图的缓存属性。
例如,除非用户单击链接,否则我希望无限期地缓存视图reload
,在这种情况下,视图将被重新生成。我注意到@cached 装饰器有一个unless
可用的kwarg,但我不确定如何使用它。
看来我应该可以在Jinja 模板的url_for('this_view', dont_cache=True)
某个地方添加一个。this_view
python - Flask - 数据加载的缓存结果
我正在烧瓶/python中编写一个服务器端应用程序,并且有一些必须加载以进行计算的数据的问题。加载数据(大约 40 MB)需要更长的时间来处理服务器响应,并且数据永远不会改变,所以我希望它只加载一次,在 apache 启动时有效。但是无论我尝试什么,每次请求进入时它都会重新加载并大大减慢速度。我可以通过下面显示的打印语句来判断,它为每个请求写入 apache 日志。我想加载数据,因此将该行写入日志,仅在启动时一次。
有趣的是,这只发生在脚本通过 WSGI 上的 apache 运行时——如果我从命令行使用 python 在本地运行它,数据加载只发生一次,服务器响应速度要快得多。
有什么想法吗?
我最近使用 flask_cache 的尝试是这样的:
编辑 - 谢谢 - 使用 before_first_request 并将“WSGIDaemonProcess myApp processes=1”添加到我的 WSGI 配置中就可以了。现在它保持进程运行,只是从中产生新的请求,而不是每次都重新运行 init。
python - 缓存 Flask-Login user_loader
我有这个。
在我介绍 Flask-Principal 之前,它运行良好。
添加它会导致严重的性能问题。SQLALCHEMY_ECHO 显示每次加载静态文件时都会查询用户表。
在这个解决了重复查询问题的实验之后,我意识到我需要在我的 Flask 应用程序中引入缓存。以下是问题。
- 如何缓存
User.query.get(id)
? - 我什么时候需要清除这个用户缓存?
python - Flask/SqlAlchemy、Flask-Cache、Celery 和 InvalidRequestError:实例“<...>”在此会话中不持久
我在这个问题上摸不着头脑。
我有一个带有 Flask-Cache 和 SqlAlchemy 的 Flask 应用程序:
芹菜工人:
还有一个通用的 get_or_create def:
我正在尝试使用缓存来解决导致 UniqueConstraint 违规的多处理(即,当两个工作人员同时插入非唯一对象时,一个应该在第一个插入后更新)
工人们在吐
InvalidRequestError:实例“<[Redacted]>”在此会话中不持久
我能弄清楚的最好的事情是我需要扩大会议的范围吗?
python - 使用以(或包含)子字符串开头的键获取或删除 Flask 中的缓存条目
我正在尝试删除缓存存储中包含(在本例中以)缓存键的子字符串开头的所有条目,但我没有看到任何简单的方法来执行此操作。我使用 Memcache 作为后端。
如果我正确理解了代码,我需要在调用delete
or时传递完整的缓存键delete_many
。有没有其他方法可以做到这一点?
如果有更好的方法,我将解释我正在尝试做什么:我需要在某些用户修改其设置时清除缓存。清除缓存clear()
将删除所有用户的缓存条目,大约 110K,所以我不想使用它。
我key_prefix
使用用户的 ID、请求的路径和其他变量生成。缓存键始终以经过身份验证的用户的 ID 开头。所以理想情况下我会使用类似的东西delete_many(user_id + ".*")
python - 如何在烧瓶缓存中配置后备 CACHE_TYPE?
使用配置为与 redis-server 实例一起使用的flask-cache,我的速度非常快。但是,如果 redis-server 变得不可用,我会收到一条错误消息:
由于 chaching 只是为了提高性能,我想配置一个回退(较慢)CACHE_TYPE
(例如,simple
)来处理 redis 服务器问题而不影响烧瓶功能。如果不可能,我希望以动态编程方式禁用缓存以防止任何烧瓶错误。
编辑
python - flask:如何存储和检索 POST 调用?
我希望能够对所描述的路径进行 POST 调用,存储它们,并从user
. 上面的代码运行,但有错误并且没有按需要执行。坦率地说,flask-cache 文档没有帮助。如何正确实现 cache.set 和 cache.get 以根据需要执行?
python - 检查用户是否是 Flask-Cache `除非`参数的匿名用户
我正在尝试缓存视图,除非用户已登录。 current_user
但只能在视图内工作,所以我无法将其传递给unless=
. 我该如何正确地做到这一点?
amazon-web-services - AWS Elasticache - 增加 memcached 项目大小限制
我在我的 python Flask 应用程序中使用memcached
模块(带有)AWS Elasticache
Flask-Cache
当我尝试设置一个小于1MB
我需要重复访问缓存的文件时,我没有问题。但是当文件大小增加超过 MB(文件可能是文本文件/csv/xlsx 等)时,我收到以下错误
错误:来自 memcached_set 的错误 37:成功
我猜是因为 memcached 项目的大小限制为 1MB。如何在 AWS Elasticache 中将此项目限制增加到 5-6 MB?
在 memcached 中增加此项目大小限制是否有任何问题?