1
fansgentle Feb 20, 2013
redis ?
|
2
felinx Feb 20, 2013 cache有一个beaker可用,简单的cache其实很容易实现,我就自己写过一个。
|
3
skyangel3 OP @felinx cache 要控制内存, python可以直接写吗, 还是要用C写Extension.
beaker 不错, 现在可能暂时不用cache吧, 要是流量大了, 可能就用memcache 处理把, 还有好像beaker 跟python tornado 不兼容, 一个帖子看到的。 |
4
crossmaya Feb 22, 2013
没看懂。。。
|
5
reorx Feb 22, 2013
@felinx beaker 略重,而且好像是专门给 WSGI 框架设计的,用在 tornado 上有点不契合。
memcache 非常适合了,几乎也不用写多少额外的代码。lz 说的控制内存是什么意思?cache 的确需要内存控制,但肯定是由提供cache功能的程序来完成了,和 python 就没有关系了呀。另外,python 的内存控制是由语言自身的垃圾回收机制完成的,不能进行细致的控制,但可以通过 del 和 reassign 变量来触发,gc 模块来做一些设定。 |
6
btwo Feb 22, 2013
我最近也向学习下tornado 有tornado +MYSQL的开源项目做参考吗?
|
7
wodemyworld Feb 23, 2013
redis就可以
|
8
felinx Feb 23, 2013 @btwo 我很早就写过一个,算比较早的用tornado做的开源项目了 https://bitbucket.org/felinx/poweredsites ,是站点 http://poweredsites.org 的源代码,里面就包含一个我说的自己写的cache。
@reorx 没错beaker和tornado不默契,所以我写个简单的玩。 |
9
tonyseek Feb 25, 2013
如果用 redis 或者 memcached 之类的外部缓存,最好在内部增加一层用 weakref 的第二层缓存,第二层缓存可以用 LRU 来清理,防止缓存雪崩的问题。
|