我正在使用 werkzeug 缓存在请求之间将常用对象缓存在内存中。我一直在进行大量重构并开始使用蓝图,但现在应用程序在尝试写入缓存时会严重崩溃。我无法获得任何有关它的调试信息,因为它就死了。有人知道去哪里看,或者有更好的方法来解决这个问题吗?我从数据库读取的数据很少发生变化,因此我希望跨请求将其缓存在网络服务器中,并使其超时并每 10 或 20 分钟刷新一次。
最佳答案
对于这么少的信息,我深表歉意,我没什么可继续的,我想我会把它扔在那里。事实证明这是一个很大的转移注意力的事情。
真正的答案是……我是个白痴。
我正在缓存一个覆盖了 getattr 函数的对象,该函数有一个非常严重的拼写错误。
return self.__getatribute__(name)
注意,getattribute 中缺少 t。这导致了无限循环并导致应用程序悄无声息地终止。感谢您的帮助,下次我会提供更多信息。
关于python - Flask 蓝图和 werkzeug.contrib.cache,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13671868/