惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
云风的 BLOG
云风的 BLOG
Microsoft Security Blog
Microsoft Security Blog
WordPress大学
WordPress大学
GbyAI
GbyAI
C
Check Point Blog
M
MIT News - Artificial intelligence
T
The Blog of Author Tim Ferriss
Jina AI
Jina AI
博客园 - 【当耐特】
U
Unit 42
月光博客
月光博客
腾讯CDC
Y
Y Combinator Blog
小众软件
小众软件
博客园_首页
Last Week in AI
Last Week in AI
酷 壳 – CoolShell
酷 壳 – CoolShell
The GitHub Blog
The GitHub Blog
博客园 - 聂微东
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
MongoDB | Blog
MongoDB | Blog
博客园 - Franky
T
Tailwind CSS Blog

博客园 - yushih

初学Erlang,写两个程序玩玩 一直没弄明白的事--为什么招聘要求会有“面向对象分析与设计”这一项 用Linux的iptables和Python模拟广域网 Python programming with goto 实用主义之过--Pragmatic Version Control using Subersion, 2nd Ed.的书评 Python把C语言打得满地找牙 信春哥!Python递归原地满状态变显式堆栈!入教即送尾递归优化! STL的binary search算法正确性的初步说明 关于文档标准之争的一点旁注 有关Ruby eval的一点编程风格 Design pattern一来,动态语言就笑了 - yushih - 博客园 完全没有领会“电子商务”的真谛 超级奇怪的F#格式错误 JAOO的魅力所在 一个Ruby idiom F#的一点糖 C++ hack:将C++编译器的类型检查转化为SLR(1)解析器 Quotes The Ruby Programming Language第一版非官方修正
Django杂记: super与metaclass,locmem有害
yushih · 2010-09-17 · via 博客园 - yushih

我调用super的习惯是这样的:
super(self.__class__, self)...
第一个参数我一般不写类名,因为我觉得这样更DRY,但是在Django中继承某些类的时候不能这样写。因为Django中有的类使用了特殊的metaclass,如果你这样定义了一个类:

class MyClass(django.XXX):
    def fun(self, ...):

那么self.__class__并不是MyClass。所以super(self.__class__, self)得到的结果并不是一般期望的。

当Django以多进程的方式部署时,locmem cache是不能用的。 首先每个进程一个cache,无端降低了命中率,增加了内存消耗。其次,如果程序是在数据改变时更新或删除老的cache,那么只有处理引起数据改变的进程的cache能得到处理,其它进程的cache都可能储存错误内容。