在 Python Falcon 中的 api 调用之间将对象保留在内存中

Ore*_*zon 5 python api pickle falconframework

我正在使用 python Falcon 开发后端 api 服务。为了服务每个 api 调用,我需要使用一个对象(所有请求都使用相同的对象),该对象每 X 小时(假设 1 小时)刷新一次。目前该对象在 S3 中保存为 pickle。问题是,pickle 相当大(~20 MB),因此为每个 api 调用读取 pickle 似乎效率不高。然而,我不确定在不同的 api 调用之间将该对象保留在内存中的正确方法是什么,以及如何每 X 小时刷新一次。因为pickle相对较大,所以我不想将其存储在本地,而更喜欢内存中共享对象的方法。

谢谢,奥伦

Har*_*iya 0

我不确定我是否完全理解您的要求。但是,当您只想存储在内存中并且是同一 python 进程的一部分时,您可以考虑全局变量并使用它。请参阅在创建全局变量的函数之外的函数中使用全局变量

它可能对你有帮助。