• Redis介绍与安装


    一、redis介绍

    redis是一个key-value存储系统。和Memcached类似,它支持存储的values类型相对更多,包括字符串、列表、哈希散列表、集合,有序集合。

    这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

    本质:将数据保存在内存中

    用途:redis可以做缓存;redis可以做消息队列

    特性:

    • 可以做持久化:在配置文件设置,如果你要保存到文件,可添加设置,就算电脑不小心关机了,数据还是在的。这个要不要保存都是自己来定的。
    • 支持存放数据的格式多(5种格式)
    {
        'k1':'hiayna',  #第一种字符串格式
        'k2':[11,22,33,44], #第二种列表格式
        'k3':{11,22,33,44}, #第三种集合格式
        'k4':{                 #第四种,字典,也可以叫做哈希散列表,
                'n1':'xxx',
                'n2':'fff'
            },
        'k5':{(11,1),('xxx':5)} #有序集合
    }

    二、相关问题

    1、为什么要使用redis?使用redis有哪些好处?

    (1) 速度快,因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1)
    
    (2) 支持丰富数据类型,支持string,list,set,sorted set,hash
    
    (3) 支持事务,操作都是原子性,所谓的原子性就是对数据的更改要么全部执行,要么全部不执行
    
    (4) 丰富的特性:可用于缓存,消息,按key设置过期时间,过期后将会自动删除

    2、redis相比memcached有哪些优势?

    (1) memcached所有的值均是简单的字符串,redis作为其替代者,支持更为丰富的数据类型
    
    (2) redis的速度比memcached快很多
    
    (3) redis可以持久化其数据

    三、redis的安装

    方式一:硬盘免安装

    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  #切换到redis
    make  #安装

    启动服务端

    src/redis-server

    启动客户端

    src/redis-cli
    redis> set foo bar
    OK
    redis> get foo
    "bar"

    方式二:安装包

    yum install redis 
    /etc/init.d/redis start  #开启 
    /etc/init.d/redis restart  #重启
    配置:/etc/redis/redis.conf #默认会读取这个文件去运行

    方式三:rpm安装

    公司说你安装以下redis
      有两种情况:
        1、直接给你rpm包
        2、或者说你直接yum install redis
          - 安装公司自定制
          - 安装官方

    ls #查看
    ctrl+c #停止
    结束进程(找服务器并杀掉):
    ps -e|grep redis #杀掉
    kill -9 12343 #重新运行

    远程操作rdis的模块(模块的本质是通过socket进行通信的)
    mysql的端口:3306
    redis的端口:6379

    四、Python操作Redis

    sudo pip install redis
    or
    sudo easy_install redis
    or
    源码安装
     
    详见:https://github.com/WoLpH/redis-py
  • 相关阅读:
    JFreeChart学习笔记
    Java基于JavaMail实现向QQ邮箱发送邮件遇到的问题
    JBPM入门
    eclipse jbmp 4.4 插件的安装及配置
    Redis开启远程登录连接
    springmvc @ResponseBody返回json 报406 not acceptable
    generatorConfiguration配置详解
    WCF、WebAPI、WCFREST、WebService之间的区别
    理解nodejs和react之间的关系
    DB2 sqlCode-668
  • 原文地址:https://www.cnblogs.com/lianxuebin/p/8497073.html
Copyright © 2020-2023  润新知