• django+redis使用方法


      -非关系型内存数据(nosql:mongodb,redis),key-value的存储
      -单线程单进程,qps:10w
      -Memcached:多线程,支持的数据类型少:只支持字符串类型,不支持持久化
      -redis:5大数据类型
        k1:‘123‘, 字符串
        k2:[1,2,3,4], 列表/数组
        k3:{1,2,3,4} 集合:去重,爬虫去重
        k4:{name:lqz,age:12} 字典/哈希表
        k5:{(‘lqz‘,18),(‘egon‘,33)} 有序集合:游戏排行榜
      -redis支持持久化:两种持久化的方案

    -python操作redis
      from redis import Redis
      conn=Redis()

    -redis连接池
      #pool需要做成单例
      pool=ConnectionPool(host=‘127.0.0.1‘,port=6379,max_connections=100)
      conn=Redis(connection_pool=pool)

    -redis之字符串操作
      -set
      -get
      -mset
      -mget
      -incr
      -decr
      -append

    -redis之hash操作
      -hset
      -hmset
      -hget
      -hmget
      -hgetall
      -hlen
      -hdel
      -hincrby
      -hscan
      -hscan_iter

    -redis之列表操作
      -lpush
      -llen
      -linsert
      -lpop
      -blpop

      -自定义增量迭代

    只支持一层的5大数据类型:也就是说字典的value值只能是字符串,列表的value值只能是字符串

    -redis的其他操作
      -delete
      -exisit
      -rename
      -keys 模糊匹配key值
      -expire
      -type

    -事务(重点)
      conn=Redis()
      pipe = conn.pipeline(transaction=True)
      pipe.multi()
      pipe.set(‘name‘, ‘alex‘)
      pipe.set(‘role‘, ‘sb‘)
      pipe.execute()

    -在django中使用redis
      -所有框架都能用的方式:
        -先新建一个py文件,生成一个redis连接池
        -在哪用,导过来,
          conn=Redis(connection_pool=POOL)
          conn.set(‘xxx‘,‘yyyy‘)
      -django中使用:django-redis模块
        -在setting中配置:
          CACHES = {
            “default”: {
              “BACKEND”: “django_redis.cache.RedisCache”,
              “LOCATION”: “redis://127.0.0.1:6379”,
              “OPTIONS”: {
                “CLIENT_CLASS”: “django_redis.client.DefaultClient”,
                “CONNECTION_POOL_KWARGS”: {“max_connections”: 100}}}}
        -使用
          在使用的位置:
          from django_redis import get_redis_connection
          conn=get_redis_connection()
          conn.set

  • 相关阅读:
    关于meta便签详解
    移动端等分比显示导航状态
    css3单选 复选按钮--代码分享
    css-样式重构-代码分享
    代码分享h5-sessionStorage,提示app下载代码块
    微信浏览器打开 点击下载app 无需提示使用浏览器打开--代码分享
    js 判断IOS版本号
    二进制,八进制,十进制,十六进制之间的转换
    JS组件系列——Bootstrap文件上传组件:bootstrap fileinput
    Bootstrap文件上传插件File Input的使用
  • 原文地址:https://www.cnblogs.com/anle123/p/13365405.html
Copyright © 2020-2023  润新知