zoukankan      html  css  js  c++  java
  • Redis学习——简介

    一、Redis简介

        Redis是一种基于键值对(key-value)的NoSQL数据库,与很多键值对数据库不同的是,Redis中的值可以是由string(字符串)、hash(哈希)、list(列表)、set(集合)、zset(有序集合)、Bitmaps(位图)、HyperLogLog、GEO(地理信息定位)等多种数据结构和算法组成,因此Redis可以满足很多的应用场景,而且因为Redis会将所有数据都存放在内存中,所以它的读写性能非常惊人。不仅如此,Redis还可以将内存的数据利用快照和日志的形式保存到硬盘上,这样在发生类似断电或者机器故障的时候,内存中的数据不会“丢失”。除了上述功能以外,Redis还提供了键过期、发布订阅、事务、流水线、Lua脚本等附加功能。总之,如果在合适的场景使用好Redis,它就会像一把瑞士军刀一样所向披靡

    二、redis特性:

    1)、速度快

    原因:1、数据存于内存中,2底层用C语言开发,效率较高,3、redis使用了单线程架构,没有多线程造成的竞争问题。

    2)、基于键值对的数据结构服务器

    redis中的值不仅是可以是字符串,还可以是具体的数据结构。主要提供了5中数据结构:

    字符串、哈希、列表、集合、有序集合

    3)、丰富的功能

    .键过期功能,用于实现缓存

    .发布订阅功能,用于实现消息系统

    .支持lua脚本功能,可以利用lua创造出新的redis命令

    .提供了简单的事物功能,能在一定程度上保证事物特性

    .提供了流水线(Pipeline)功能,这样客户端能将一批命令一次性传到redis,减少了网络的开销。

    4)、简单稳定

    5)、客户端语言多

    6)、持久化:RDB和AOF

    7)、主从复制,实现了多个相同数据的redis副本。复制功能是分布式redis的基础。

    8)、高可用和分布式

    三、redis使用场景

    1)、缓存(几乎所有的大型网站都用redis做缓存)

    2)、排行榜系统

    3)、计数器应用

    4)、社交网络

    5)、消息队列系统

    四、redis的安装

    1)下载Redis指定版本的源码压缩包到当前目录。

    2)解压缩Redis源码压缩包。

    3)建立一个redis目录的软连接,指向redis-3.0.7。(这样做是为了不把redis目录固定在指定版本上,有利于Redis未来版本升级,算是安装软件的一种好习惯。)

    4)进入redis目录。

    5)编译(编译之前确保操作系统已经安装gcc)。

    6)安装。(安装是将Redis的相关运行文件放到/usr/local/bin/下,这样就可以在任意目录下执行Redis的命令)

    $ wget http://download.redis.io/releases/redis-3.0.7.tar.gz
    $ tar xzf redis-3.0.7.tar.gz
    $ ln -s redis-3.0.7 redis  
    $ cd redis
    $ make
    $ make install

    Redis安装之后,src和/usr/local/bin目录下多了几个以redis开头可执行文件,我们称之为Redis Shell:

            redis-benchmark 性能测试工具

    redis-check-aof aof日志文件检测工具(比如断电造成日志损坏,可以检测并修复)

    redis-check-dump rdb快照文件检测工具,效果同上

    redis-cli 客户端

    redis-server 服务端

    五、配置、启动、操作、关闭Redis

    1、配置启动Redis

        1)默认配置启动Redis

    ./redis-server

    这种启动是前台直接运行,也就是说,执行完该命令后,如果Lunix关闭当前会话,则Redis服务也随即关闭

        2)运行启动

    redis-server加上要修改配置名和值(可以是多对),没有设置的配置将使用默认配置

    # redis-server --port 6380

    这种启动是前台直接运行

        3)配置文件启动

    将配置写到指定文件里,通过配置文件启动

    ./redis-server /home/etluser/redis/redis.conf

    这种启动后台启动

    2、Redis命令行客户端

        1)交互式方式

    通过redis-cli-h{host}-p{port}的方式连接到Redis服务,之后所有的操作都是通过交互的方式实现,不需要再执行redis-cli了

    ./redis-cli -h 127.0.0.1 -p 6379

    2)命令方式

    用redis-cli-h ip{host}-p{port}{command}就可以直接得到命令的返回结果

    redis-cli -h 127.0.0.1 -p 6379 get hello

    如果没有-h参数,那么默认连接127.0.0.1;如果没有-p,那么默认6379端口

    3、停止Redis服务

    Redis提供了shutdown命令来停止Redis服务

    $ redis-cli shutdown

    shutdown还有一个参数,代表是否在关闭Redis前,生成持久化文件:redis-cli shutdown nosave|save


    参考资料:《Redis开发与运维》

  • 相关阅读:
    用JavaScript往DIV动态添加内容
    【转】javascript入门系列演示·三种弹出对话框的用法实例
    ASP.Net:Table类的使用
    vs2010设置 "行号显示"
    HTML相对路径 当前目录、上级目录、根目录、下级目录表示法
    【转】算法基础(二):栈的应用 --- 迷宫解题
    【转】CSS中怎么让DIV居中
    【转】如何让DIV水平和垂直居中
    SQL : 在SQL Server 2008(Or Express)中如何Open并编辑数据表【转】
    SQL2005中设置自动编号字段【转】
  • 原文地址:https://www.cnblogs.com/jnba/p/10677782.html
Copyright © 2011-2022 走看看