💡 功能亮点:持久插件缓存

💾 缓存以提高性能、可靠性和网络效率

该系统现在提供了一个中央持久缓存机制(“simple_plugin_cache”),旨在减少外部网络负载(例如天气、翻译 API)并加速执行。缓存是持久的,这意味着条目在服务重新启动后仍然存在。

目标: 减少网络流量,防止 API 滥用,并在外部服务中断期间提供快速回退响应。


1. 基本缓存实现(TTL 驱动)

要缓存函数的结果,您需要跨三个块实现核心逻辑:检查执行存储

1.1 导入和配置

添加必要的导入并在插件脚本中定义生存时间(TTL)常量(例如“weather.py”):

代码_块_0

1.2 execute 块中的缓存逻辑

在进行任何网络调用之前,“execute”函数必须首先尝试检索缓存的结果。

代码_块_1


2. 高级缓存模式

A. 永久(永恒)缓存

如果结果应该永不过期(例如,静态配置查找),请完全省略“ttl_seconds”参数。

代码_块_2

B. 缓存键(key_args)要求

  • key_args 必须是一个元组,包含定义结果的所有变量(例如,(city, language, unit_system))。

  • 缓存机制自动将常见的非JSON可序列化的Python对象(例如**pathlib.Path**)转换为字符串以用于密钥生成。