草庐IT

django-rules

全部标签

redis - 如何用Django Rest Framework实现Redis Cache?

我需要使用我的DjangoRestFramework站点实现Redis缓存。但当我使用带有类的cache_page装饰器进行负载测试时,它提高了每秒的请求但发生错误“'function'对象没有属性'get_extra_actions'”View.py@cache_page(CACHE_TTL)classParameterViewSet(viewsets.ModelViewSet):"""Listsalltheparameterspresentinthesystem.CanpassfilterwithparentsettonulltogettoplevelParameters."""p

带有redis的Django正在缓存所有页面

我在django-redis中使用模板缓存,它工作正常,但是,尽管我不使用装饰器(如cache_page、cache_control等),django会自动缓存每个加载的页面。我使用redis-cli验证了这一点。这是页面加载后的keys*输出:1)":1:views.decorators.cache.cache_header..11786bb66822aef24b9fe0dac22e6e4e..."2)":1:views.decorators.cache.cache_page..GET.11786bb66822aef24b9fe0dac22e6e4e..."3)":1:django.

django - 我在使用 Celery、Redis 和 Django 时遇到问题

我在使用Celery、Redis和Django时遇到问题。我正在尝试使用它们来创建一个简单的任务。但是,任务执行不久就出现了错误。我将在下面详细说明部分代码,以便更好地理解。感谢您的关注。CELERY_BROKER_URL='redis://:password@REDIS:6379/0'CELERY_RESULT_BACKEND='redis://REDIS:6379/0'CELERY_ACCEPT_CONTENT=['application/json']CELERY_RESULT_SERIALIZER='json'CELERY_TASK_SERIALIZER='json'CELERY

python - django 项目中的 Celery 异步任务。这个怎么运作?

我需要在我的Django项目中运行长任务。决定使用带有redis的celery作为代理。安装的redis运行:Theserverisnowreadytoacceptconnectionsonport6379比我安装django-celery,配置:importdjcelerydjcelery.setup_loader()BROKER_HOST="localhost"BROKER_PORT=6379#redisBROKER_USER="guest"BROKER_PASSWORD="guest"BROKER_VHOST="/"并运行它:pythonmanage.pyceleryd-lDEB

django - 在 Django 应用程序中多次访问静态数据

我正在构建一个应用程序,但我无法选择在Django应用程序中多次访问静态数据的最佳方式。我在该领域的经验几乎为零,因此我需要一些帮助。该应用基本上由拖放食物组成。当您将食物拖到确定的位置(例如早餐)时,不同的值会更新:早餐总卡路里、全天营养素(微观/宏观)、全天卡路里……这就是为什么我认为我存储和访问的方式数据是非常重要的性能。这是我当前使用的json文件的摘录:食物.json{"112":{"type":"Vegetables","description":"Mushrooms","nutrients":{"Niacin":{"unit":"mg","group":"Vitamins

Django,使用redis-py锁定django View

我正在尝试使用redis来锁定我项目中的一些大型管理Postgresql事务。到目前为止,我的开发环境还没有成功。代码的简单版本如下所示:deftest_view(request):connec=redis.Redis(unix_socket_path='/tmp/vgbet_redis.sock')ifnotconnec.setnx('test',''):print'Locked'else:time.sleep(5)#Slowtransactionconnec.delete('test')print'Unlocked'returnrender_to_response("test.ht

python - Django: AttributeError: 'bool' 对象没有属性 'expire'

我目前正在使用AndyMcCurdy的redis.py模块与Django中的Redis交互我使用Celery将某些任务卸载到后台。这是我的任务之一:importredispool=redis.ConnectionPool(host='XX.XXX.XXX.X',port=6379,db=0,password='password')r_server=redis.Redis(connection_pool=pool)pipe=r_server.pipeline()#Thenumberofsecondsfortwomonthsseconds=5356800@shared_taskdefAct

django - 如何锁定对django redis缓存的访问

我可以通过多个gunicorn客户端并发访问django-redis-cache中的一个键。如何锁定对key的访问,以便每次只有一个客户端可以访问key? 最佳答案 Djangoredis提供了一个lockingmechanism您可以在不遇到竞争条件的情况下使用。我的settings.py文件使用与上面链接的文档指定的相同CACHES设置。以下代码显示了控制台中的锁:importosos.environ.setdefault('DJANGO_SETTINGS_MODULE','filestorage.settings')fromd

具有多个 Heroku Dynos 的 Django session

我在Django中构建了一个带有登录/注销功能的简单网站,并将其部署到Heroku。我正在使用内置的Django身份验证用户。我已经验证,当用户登录时,他们会看到一个个人资料页面,并且在刷新后他们会保持登录状态。当我将Heroku测功机的数量增加到超过1时,session不再持久。我的意思是,在用户登录后,一两次刷新后,用户将注销。我相信这是因为每个请求都转到一个特定的测功机,每个测功机都隔离地维护session状态?显然,当session仅在用户碰巧从正确的dyno请求时才有效时,我的网站无法运行。为了尝试解决这个问题并允许我的Django应用程序使用多个dyno,我使用了djang

django - Heroku (Django) 上 redis_url 的字符串而不是 urlparse.ParseResult

非常感谢任何有将redis配置为heroku上celery-brokereddjango项目后端经验的人的意见。我的任务调度在localhost上运行良好,但我发现将它部署到heroku上真的很令人沮丧:目前我正在运行3个测功机、1个网络、1个调度程序和1个worker我将redistogo插件添加到我的项目中。Redistogo设置为免费nano计划,这为我提供了10个连接、1个数据库和一个5MB大小的实例我按照redistogo文档(https://devcenter.heroku.com/articles/redistogo#install-redis-in-python)来配置