在其他语言(例如Java)中,对象引用可以是Strong,Weak,Soft或Phantom(http://weblogs.java.net/blog/enicholas/archive/2006/05/understanding_w.html).
在Python中,默认情况下引用为Strong,而WeakRef模块允许弱引用.
是否可以在Python中使用"软引用"?
在我的特定情况下,我有一个对象的缓存,这些对象的创建非常耗时.有时可能没有对缓存对象的引用,但是如果我不需要(例如,如果内存很多),我不想抛弃缓存的对象.
我有一个基于 Flask 的 Web 应用程序,可以通过 Zappa 部署到 AWS Lambda。一切都很好。
\nFlask 文档说:
\n\n\n虽然轻量且易于使用,但 Flask\xe2\x80\x99s 内置服务器不适合生产,因为它\xe2\x80\x99t 不能很好地扩展。此处记录了一些可用于在生产中正确运行 Flask 的选项。
\n
在独立服务器上,Python 是单线程的(全局解释器锁(GIL)等),因此如果没有应有的谨慎和注意,就无法很好地处理多个请求。
\n在 AWS Lambda(可能还有其他 FaaS 基础设施)上,每个 HTTP 请求都会获得一个单独的 Python 实例,因此 GIL 不是问题,并且 Lambda 通过使用多个函数调用来负责扩展。
\n因此,在 AWS Lambda 上运行时,是否强烈建议使用 WGSI 容器(Gunicorn、uWGSI 等)?为什么或者为什么不?
\n我猜测可能相关的一些因素包括:
\n