私は werkzeug キャッシングを使用して、一般的に使用されるオブジェクトをリクエスト間でメモリにキャッシュしています。私は多くのリファクタリングを行っており、ブルー プリントの使用を開始しましたが、キャッシュに書き込もうとするとアプリケーションがハード クラッシュします。死ぬだけなので、デバッグ情報を取得できません。誰がどこを見るべきか、またはこれにアプローチするより良い方法を知っていますか? データベースから読み取っているデータが変更されることはめったにないため、リクエスト全体で Web サーバーにキャッシュし、タイムアウトして 10 分または 20 分ごとに更新したいと考えています。
質問する
450 次
1 に答える
1
情報が少なかったことをお詫びします。先に進むことはほとんどなかったので、それを捨てようと思いました。つまり、これは大きな赤いニシンだったことがわかりました。
本当の答えは…私は馬鹿です。
getattr関数をオーバーライドしたオブジェクトをキャッシュしていましたが、これには本当にひどいタイプミスがありました。
return self.__getatribute__(name)
getattribute に t がないことに注意してください。これにより、無限ループが発生し、アプリケーションが静かに終了しました。助けてくれてありがとう、次回はもっと情報を提供します。
于 2012-12-04T01:36:43.647 に答える