草庐IT

django-extensions

全部标签

django - ConnectionAbortedError - 如果 Celery 停止/失败或 Redis 未启动。我如何捕获/除此错误/

我有一个与Redis一起工作的Celery任务:@app.task(bind=True,name='task_a',max_retries=4,soft_time_limit_exception=300)deftask_a(self,a,b):try:#somecodehereexceptExceptionase:raiseself.retry(exc=e,countdown=exponential_backoff(self))defexponential_backoff(task_self):minutes=task_self.default_retry_delay/60rand=r

django - Redis 在内存已满之前驱逐键

我将Redis用作简单的键值存储。我实际上使用的是Heroku插件(RedisCloud),但我认为这个问题并不重要。好的,Redis的可用内存为1GB,驱逐策略设置为allkeyslru。存储数据时我没有设置ttl。我的理解是,数据会保留在Redis中,直到内存已满。然后最近使用的数据被逐出。但事实并非如此。Redis持续使用大约3MB的内存并很快删除数据。我是不是理解错了?为什么Redis不把数据保存在内存中?谢谢西蒙 最佳答案 找到了。Redis本身不是问题。我正在使用的Django插件之一(django-redis-cach

django - Redis 在内存已满之前驱逐键

我将Redis用作简单的键值存储。我实际上使用的是Heroku插件(RedisCloud),但我认为这个问题并不重要。好的,Redis的可用内存为1GB,驱逐策略设置为allkeyslru。存储数据时我没有设置ttl。我的理解是,数据会保留在Redis中,直到内存已满。然后最近使用的数据被逐出。但事实并非如此。Redis持续使用大约3MB的内存并很快删除数据。我是不是理解错了?为什么Redis不把数据保存在内存中?谢谢西蒙 最佳答案 找到了。Redis本身不是问题。我正在使用的Django插件之一(django-redis-cach

django - 缩放 Gevent Socketio

我目前有一个使用Django的站点设置。我添加了GeventSocketio来添加聊天功能。我需要扩展它,因为网站上已经有相当多的用户,但找不到这样做的方法。我试过了https://github.com/abourget/gevent-socketio/tree/master/examples/django_chat/chat我正在使用Gunicorn和socketio.sgunicorn.GeventSocketIOWorkerworker类,所以起初我想到增加worker数。不幸的是,这似乎间歇性地失败了。我已经开始重写它以使用我发现的几个来源的redis,并且每台服务器上都有1个

django - 缩放 Gevent Socketio

我目前有一个使用Django的站点设置。我添加了GeventSocketio来添加聊天功能。我需要扩展它,因为网站上已经有相当多的用户,但找不到这样做的方法。我试过了https://github.com/abourget/gevent-socketio/tree/master/examples/django_chat/chat我正在使用Gunicorn和socketio.sgunicorn.GeventSocketIOWorkerworker类,所以起初我想到增加worker数。不幸的是,这似乎间歇性地失败了。我已经开始重写它以使用我发现的几个来源的redis,并且每台服务器上都有1个

python - 使用 Redis 与 memcached+db 作为 Django 的 session 系统的优缺点?

Django的内置cached_dbsession允许我使用memcached来存储session数据,并写入数据库以实现持久性。虽然一些应用程序使用redis作为它们的session存储(例如instagram)。这些解决方案的优缺点是什么?附注我不是问memcached和redis的对比,这个问题Memcachedvs.Redis?已经提供了很好的答案。我想问的是在session系统的情况下哪个更好。 最佳答案 在Memcached中,当达到内存限制时,键会过期,即使它们的ttl仍然到期。这样你的一些用户将失去他们的sessio

python - 使用 Redis 与 memcached+db 作为 Django 的 session 系统的优缺点?

Django的内置cached_dbsession允许我使用memcached来存储session数据,并写入数据库以实现持久性。虽然一些应用程序使用redis作为它们的session存储(例如instagram)。这些解决方案的优缺点是什么?附注我不是问memcached和redis的对比,这个问题Memcachedvs.Redis?已经提供了很好的答案。我想问的是在session系统的情况下哪个更好。 最佳答案 在Memcached中,当达到内存限制时,键会过期,即使它们的ttl仍然到期。这样你的一些用户将失去他们的sessio

python - 寻找 : nosql (redis/mongodb) based event logging for Django

我正在寻找一个灵活的事件记录平台来存储Django的预定义(用户名、IP地址)和非预定义(可以根据需要由任何代码段生成)事件。我目前正在用日志文件做一些这样的事情,但它最终需要各种分析脚本,并且无论如何都会在数据库中结束,所以我正在考虑立即将它扔到MongoDB或Redis等nosql存储中。这个想法是为了能够轻松查询,例如,用户最常来自哪个ip地址,用户是否曾经执行过某些操作,查找特定事件的结果等。是否已经有一些东西可以做到这一点?如果没有,我在想这个:“事件”是附加到请求对象的字典。中间件填写各个部分(用户名,ip,sql时序),代码根据需要填写其余部分。在为请求提供服务后,请求后

python - 寻找 : nosql (redis/mongodb) based event logging for Django

我正在寻找一个灵活的事件记录平台来存储Django的预定义(用户名、IP地址)和非预定义(可以根据需要由任何代码段生成)事件。我目前正在用日志文件做一些这样的事情,但它最终需要各种分析脚本,并且无论如何都会在数据库中结束,所以我正在考虑立即将它扔到MongoDB或Redis等nosql存储中。这个想法是为了能够轻松查询,例如,用户最常来自哪个ip地址,用户是否曾经执行过某些操作,查找特定事件的结果等。是否已经有一些东西可以做到这一点?如果没有,我在想这个:“事件”是附加到请求对象的字典。中间件填写各个部分(用户名,ip,sql时序),代码根据需要填写其余部分。在为请求提供服务后,请求后

python - 如何在 Django 应用程序中对列表和集合使用 Redis 命令

我正在开发一个Django应用程序,我想在其中使用Redis进行缓存。我看到很少有像django-redis和django-redis-cache这样与Django集成的包,可以用来访问redis。但是,对于这些包,您只能使用“get”和“set”命令。如何将其他Redis命令用于列表、集合、排序集合,如rpush、lrange、zadd?我们可以将它与上述包(django-redis、django-redis-cache)一起使用还是我们需要使用redis-py客户端?感谢您的帮助! 最佳答案 您可以访问rawredisconne