当前位置: 首页 > news >正文

ui设计和网站建设人员李伟宁网站建设补充报价单

ui设计和网站建设人员李伟宁,网站建设补充报价单,网站绑定多个域名,怎么建立网站管理系统文章目录 redis介绍和安装安装步骤启动,连接 redis普通连接和连接池普通连接连接池 redis字符串类型redis hash类型redis列表类型 redis介绍和安装 redis 什么? 数据库就是个存数据的地方:只是不同数据库数据组织,存放形式不一样…

文章目录

  • redis介绍和安装
    • 安装
        • 步骤
        • 启动,连接
  • redis普通连接和连接池
    • 普通连接
    • 连接池
  • redis字符串类型
  • redis hash类型
  • redis列表类型

redis介绍和安装

  1. redis 什么?
    • 数据库就是个存数据的地方:只是不同数据库数据组织,存放形式不一样
    • 关系型数据库:mysql、oracle、sqlserver、postgrasql
    • 非关系型数据(no sql):redis,mongodb,clickhouse,infludb,elasticsearch,hadoop
      • 没有sql:没有sql语句
      • not olny sql 不仅仅是sql
    • redis:一款纯内存存储的非关系型数据库(数据都在内存),速度非常快

  2. redis特点:https://www.cnblogs.com/liuqingzheng/articles/9833534.html
    • redis是一个key-value存储系统
    • 数据类型丰富,支持5大数据类型:字符串,列表,hash(字典),集合,有序集合
    • 纯内存操作
    • 可以持久化:能都把内存数据,保存到硬盘上永久存储

  3. redis为什么这快?
    • 纯内存,减少io
    • 使用了 io多路复用的 epoll 网络模型
    • 数据操作是单线程,避免了线程间切换
      • 多个客户端同时操作,不会存在并发安全问题

安装

  1. 最新是7,公司里5、6比较多
  2. 开源软件,免费的,他们不支持win
    • epoll模型不支持win
  3. 微软官方:基于源码修改 ⇢ \dashrightarrow 编译成可执行文件
  4. 第三方:https://github.com/tporadowski/redis/releases/
步骤
  1. win:下载安装包,一路下一步
    • 安装目录在环境变量中:任意路径敲 redis-server reidis-cli 都能找到
    • redis做成了服务,以后通过服务启动即可
  2. mac:官网下载,解压即可
win,mac:两个可执行文件:
redis-server :等同于 mysqld
reidis-cli :等同于mysql
启动,连接
  1. 启动方式

    • 使用服务启动
    • 使用命令启动:redis-server
  2. 连接
    1.本地:redis-cli
    2.远端:redis-cli -h 地址 -p 端口(默认端口6379)

  3. 图形化客户端

    • resp: https://github.com/lework/RedisDesktopManager-Windows/releases
    • Navicate
      连接上发现有16个库
  4. 放值
    使用图形化客户端放入值

  5. 取值
    cmd中连接Redis后:get key

redis普通连接和连接池

  1. python 代码作为客户端—》连接

  2. 安装模块:pip install redis

普通连接

from redis import Rediscoon = Redis(host='localhost', port=6379, db=0, decode_responses=True)res= coon.get('name')print(res)coon.close()

连接池

import redis
POOL = redis.ConnectionPool(host='localhost', port=6379, max_connections=50)from threading import Threaddef task():coon = redis.Redis(connection_pool=POOL)print(coon.get('name'))coon.close()if __name__ == '__main__':for i in range(5):t = Thread(target=task)t.start()

redis字符串类型

conn为实例化得到对象

  1. 新增或修改:conn.set(key, value, ex=None, px=None, nx=False, xx=False)
    • ex:过期时间(秒)
    • px:过期时间(毫秒)
    • nx:如果设置为True,则只有key不存在时,当前set操作才执行,值存在,就修改不了,执行没效果
    • xx:如果设置为True,则只有key存在时,当前set操作才执行,值存在才能修改,值不存在,不会设置新值
  2. sex中nx为Ture:conn.setnx(key, value)
  3. sex中ex传值:conn.setex(name, value, time)
  4. sex中px传值:conn.psetex(name, time_ms, value)
  5. 批量新增或修改:conn.mset(*args, **kwargs)
  6. 获取值:conn.get(key)
  7. 批量获取值:conn.mget(keys, *args)
  8. 新增或修改值并返回之前的值:conn.getset(key, value)
  9. 获取start到end的字符:conn.getrange(key, start, end)
  10. 从offset位置开始修改成value:conn.setrange(key, offset, value)
  11. conn.setbit(key, offset, value)
  12. conn.getbit(key, offset)
  13. conn.bitcount(key, start=None, end=None)
  14. conn.bitop(operation, dest, *keys)
  15. 统计长度:conn.strlen(key)
  16. 自加整数:conn.incr(key, amount=1)
    key值为数字,amount默认1,执行一遍,值增加amount
  17. 自加浮点型:conn.incrbyfloat(key, amount=1.0)
  18. 自减整数:conn.decr(self, key, amount=1)
  19. 自减浮点型:conn.append(key, value)

redis hash类型

hash 类型,就是咱们python中的字典类型, 数据结构:数据的组织形式 底层存储 数组 ⇢ \dashrightarrow 根据key值使用hash函数得到结构,存到数组中
字典的key值必须可hash
字典的key值必须是不可变数据类型
hash 类型无序,跟放的先后顺序无关的
python 的字典是 有序的 字典+列表

  1. 新增或修改:conn.hset(name, key, value)
  2. 批量新增或修改:conn.hmset(name, mapping)
    conn.hmset('userinfo2',{'name':'pyy',"age":33})
    conn.hset('userinfo3',mapping={'name':'xxx',"age":33})
    
  3. 获取值:conn.hget(name,key)
  4. 批量获取值:conn.hmget(name, keys, *args)
  5. 取出hash中里的所有数据(k:v):conn.hgetall(name)
  6. 获取hash中数据数量:conn.hlen(name)
  7. 以列表获取所有key:conn.hkeys(name)
  8. 以列表获取所有value:conn.hvals(name)
  9. 验证hash中有无key值,返回布尔值:conn.hexists(name, key)
  10. 批量删除值:conn.hdel(name,*keys)
    conn.hdel('userinfo', 'age', 'hobby')
    
  11. 将key值自增:conn.hincrby(name, key, amount=1)
  12. 将key值自增(浮点型):conn.hincrbyfloat(name, key, amount=1.0)
  13. 从name中cursor位置取出count个值:conn.hscan(name, cursor=0, match=None, count=None)
  14. 一次性全取出,成迭代器:conn.hscan_iter(name, match=None, count=None)

redis列表类型

进行操作列表类型的表

  1. 从列表最左边数据新增:conn.lpush(name, values)
  2. 从列表最右边数据新增:conn.rpush(name, values)
  3. 列表name存在时,从左边新增:conn.lpushx(name, value)
  4. 列表name存在时,从右边新增:conn.rpushx(name, value)
  5. 获取列表长度:conn.llen(name)
  6. 以refvalue为参照物添加值:conn.linsert(name, where, refvalue, value))
    • 前:where=before
    • 后:where=after
  7. 修改indexconn.lset(name, index, value)
  8. 从左侧删count个value值:conn.lrem(name, count, value)
  9. 从列表左侧删除并弹出:conn.lpop(name)
  10. 从列表右侧删除并弹出:conn.rpop(name)
  11. 取出index位置的值:conn.lindex(name, index)
  12. 从start位置到end位置取出:conn.lrange(name, start, end)
  13. 留下从start位置到end位置,其他全部删除:conn.ltrim(name, start, end)
  14. 从列表src右侧弹出添加到dst左侧:conn.rpoplpush(src, dst)
  15. 从左侧阻塞式弹出:conn.blpop(keys, timeout)
    • 如果列表内没值,timeout(秒)时间到返回None
  16. 从左侧阻塞式删除弹出:conn.brpop(keys, timeout)
  17. 阻塞式从列表src右侧弹出添加到dst左侧:conn.brpoplpush(src, dst, timeout=0)
http://www.yayakq.cn/news/88712/

相关文章:

  • 前几年做啥网站能致富租车网站建设系统的设计
  • 网站如何做超级链接百度打广告多少钱
  • 网站建设功能点价格网页设计需要学什么东西
  • 长宁哪里有做网站优化比较好哪个网站找到做箱包厂外发的
  • 镇江网站建设活动方案购物网站排名2016
  • 如何免费做网站并发布wordpress可以问答
  • 企业微信小程序如何开发seo什么意思
  • 无为县住房建设局网站首页大连建站模板厂家
  • 网站制作基本规则长春建设平台网站的公司吗
  • 杭州网站建设设计公司哪家好wordpress站点相关
  • 做gif动图的素材网站红和蓝的企业网站设计
  • 让一个网站掉排名商城网站源码大全
  • 温州建设小学网站个人网站开发协议
  • 迎访问备案网站管理系统找人做网站都需要提供什么
  • 徐州住房与城乡建设部网站在线印章制作
  • 昆明优化网站公司中国建设银行招聘网站通知
  • 网站做计算功能门户网站开发意义
  • 设计师喜欢的购物网站免费网站创建
  • 自建博客wordpress搜索关键词排名优化技术
  • 中山网站百度优化男生学平面设计好就业吗
  • 微门户网站建设文化建设包括哪些
  • 网站前台修改网站备案在哪查
  • 做视频用的网站网站关键词分布情况
  • 建设个人网站赚钱做网站需要代码吗
  • 网站开发技术方案做网站到底要不要营业执照
  • 昭通网站建设 hardlcp做名片哪个网站最好
  • 网站开发属于哪个大学专业下列关于网站开发中网页额
  • 上海城乡建设部网站徐州网站建设制作工作室
  • 沈阳seo排名收费seo店铺描述例子
  • 网站后台修改图片哪个网站做的ppt模板好