【问题标题】:django rest framework and redisdjango rest框架和redis
【发布时间】:2020-07-27 04:40:20
【问题描述】:

我正在从事一个有 30 到 40 个 gps 跟踪器的项目,我想让客户能够选择任何跟踪器,然后跟踪其位置。我能够让跟踪器使用 django rest 框架进行通信,这是我正在使用通道的实时应用程序。

数据库被划分为一个表用于跟踪器,另一个表用于跟踪它们的当前位置。使用 seconds 表,我可以将请求的跟踪器位置提供给用户。

我想知道是否有办法让我用redis实现django rest框架,这样来自tracker的post请求被直接缓存,而不是在数据库中插入或更新。追踪器的历史位置对我来说并不重要,只关心它们的当前位置。

【问题讨论】:

    标签: python django redis django-registration


    【解决方案1】:

    您可以直接将坐标存储在 redis 中,无需访问数据库。

    例如:

    import redis
    
    redis_instance = redis.StrictRedis(host=settings.REDIS_HOST,
                                      port=settings.REDIS_PORT, db=0)
    
    redis_instance.set(kwargs['key'], new_value)
    

    并从中获得价值

    redis_instance.redis_instance.get(key)
    

    同样你可以使用Django cache(当你将它配置为使用redis时)

    from django.core.cache import cache
    cache.set('my_key', 'hello, world!', None)
    cache.get('my_key')
    

    【讨论】:

    • 对不起,我对 django 和 drf 还很陌生,我是否有必要对 drf 使用序列化,或者我可以直接将其缓存到 redis 中。
    猜你喜欢
    • 2021-08-19
    • 2015-01-04
    • 2015-08-07
    • 2014-04-21
    • 2015-04-26
    • 2015-07-16
    • 2018-06-12
    • 1970-01-01
    相关资源
    最近更新 更多