python - functools lru_cache 的生命周期?
问题描述
我有一个烧瓶应用程序正在运行,我正在使用它通过具有各种端口的套接字客户端路由各种请求。不同的端口指向我使用构建的不同 Windows 服务pyinstaller
。
每个 Windows 服务负责使用参数列表并返回基于一些机器学习模型的结果,这些模型未腌制并存在于服务内部的内存中。
lru_cache
我想使用from加快对具有相同参数的每个服务的调用functools
,并且我正在考虑将此装饰器放在每个烧瓶路由上,以防止调用该服务。
有谁知道缓存能持续多久?它是否仅在单个调用堆栈的生命周期内存在(将缓存用于作为此堆栈一部分的任何调用,如递归函数)?或者只要机器运行,缓存就一直存在?
我知道我需要设置 maxsize 以利用缓存的 LRU 部分,并且我知道进入装饰函数的 args 必须是可散列的。
解决方案
推荐阅读
- node.js - git clone 删除我项目中的所有内容
- python - 如何从字符串列表中删除不需要的字符?
- java - 扫描仪实际上并未接受用户输入
- apache-flink - Flink 没有在 Cassandra 中存储价值
- python - 用 C# 开发复杂的字典结构。在 python 中有字典结构,但现在我正在尝试用 C# 编写它
- reactjs - 在最终渲染页面之前,路线`/item/gorod_(byaz_220_sm)_sinego_tsveta_1100.037_1` 闪烁 404 的问题
- c - 程序内部的堆栈帧信息/回溯打印,而不是使用 GDB
- django - Django - values_list CSV
- mysql - mySQL如何从限制日期中选择同一字段中的一些数据
- python - 如何使用python创建html表