zoukankan      html  css  js  c++  java
  • python操作 redis

    python操作redis

     

    Redis

    redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

    1、安装redis

    复制代码
    yum install redis -y
    
    或者
    wget http://download.redis.io/releases/redis-3.0.6.tar.gz
    tar xzf redis-3.0.6.tar.gz
    cd redis-3.0.6
    make
    复制代码
     
    2、启动redis
    这里注意对配置文件修改
    打开注释,不然py客户端连不上  

    守护模式不开就no  

    指定配置文件进行启动  

    然后准备设置redis验证密码(不然py连接报错)

    退出,重新登录redis  


    3python操作redis

    复制代码
    #!/usr/bin/env python 
    # -*- coding:utf8 -*-
    
    import redis
    
    r = redis.Redis(host='192.168.11.122',password='123123',port=6379)
    
    r.set('foo', 'Bar')
    print (r.get('foo'))


    print(r.get('name'))
    复制代码

    vim /opt/redis-4.0.10/redis.conf

    把 bind 127.0.0.1 改成  0.0.0.0

    daemonize no 改成 yes

    xshell里启动服务端:

    redis-server /opt/redis-4.0.10/redis.conf

    在起端口:redis-cli -p 6380
    输入密码:auth liangshuang12
    ping
    操作:set name 'liangshuang'

    然后在pycharm里运行去name值

    4、线程池操作redis

    复制代码
    '''
    redis-py 使用connection pool 来管理对一个redis server的所有连接,避免每次建立,释放连接的开销
    默认 每个redis实例都会维护一个自己的链接池,然后作为参数redis,这样就可以实现多个redis 实例共享一个连接池
    '''
    import redis
    
    pool = redis.ConnectionPool(host='192.168.11.122',password='123123',port=6379)
    
    r = redis.Redis(connection_pool=pool)
    r.set('name','Yu chao')
    print(r.get('name'))
  • 相关阅读:
    JZOJ 2548. 【NOIP2011模拟9.4】最大正方形
    JZOJ 3532. 【NOIP2013提高组day1】转圈游戏
    网络流模板 dinic
    1433: [ZJOI2009]假期的宿舍
    JZOJ 1285. 奶酪厂
    JZOJ 1284. 病毒
    SpringMVC路径匹配规则源码
    RESTful设计风格下SpringMVC的URI设计性能问题
    递归查询mysql数据库设计
    java定时任务调度
  • 原文地址:https://www.cnblogs.com/ls13691357174/p/9812872.html
Copyright © 2011-2022 走看看