zoukankan      html  css  js  c++  java
  • 2.Redis 入门介绍

    A)入门概述:

      1.是什么:

        Redis:REmote  Dlctionary  Server(远程字典服务器)

        是完全开源免费的,用C语言编写的,遵循BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSQL数据库之一,也被人们称为数据结构服务器

        Redis与其他 key - value 缓存产品相比有以下三个特点:1.Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载使用;;;2.Redis不仅仅支持简单的key-value 类型的数据,同时还提供list,set,zset,hash等数据结构的存储;;;3.Redis支持数据的备份,即master-slave模式的数据备份

      

      2.能干吗

        内存存储和持久化:redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务

        取最新N个数据的操作,如:可以将最新的10条评论的ID放在Redis的List集合里面  

        模拟类似于HttpSession这种需要设定过期时间的功能

        发布、订阅消息系统

        定时器、计数器

      

      3.去哪下  http://redis.io/     http://www.redis.cn/

      4.怎么玩   

        数据类型、基本操作和配置

        持久化和复制,RDB/AOF

        事务的控制

        主从复制

    B)虚拟机及Linux系统的安装

    C)Redis的安装        Linux版安装

      下载获得 redis-3.0.4.tar.gz 后将它放到我们的Linux   /opt目录下

      /opt目录下,解压命令:tar -zxvf redis-3.0.4.tar.gz

      解压完成后出现文件夹:redis-3.0.4 

      进入目录:cd redis-3.0.4   

      在redis-3.0.4目录下执行make命令(如果没有安装 gcc 须先安装gcc) 

      如果make完成后继续执行make install

      查看默认安装目录:usr/local/bin  

        redis-benchmark:性能测试工具,可以在自己本子运行,看看自己本子性能如何

        redis-check-aof:修复有问题的AOF文件,rdb和aof后面讲

        redis-check-dump:修复有问题的dump.rdb文件

        redis-cli:客户端,操作入口

        redis-sentinel:redis集群使用

        redis-server:Redis服务器启动命令

      启动

        修改redis.conf文件将里面的daemonize no 改成 yes,开启守护进程,让服务在后台启动

        将默认的redis.conf拷贝到自己定义好的一个路径下,比如/my.conf 

        启动 redis-server  /my.conf    以/my.conf 启动redis服务端

           redis-cli -p 6379 进入客户端,操作redis

        连通测试  

        /usr/local/bin目录下运行redis-server,运行拷贝出存放了自定义conf文件目录下的redis.conf文件

      永远的helloword:    set  k1  helloword      get  k1

      

      关闭  

        单实例关闭:redis-cli shutdown

        多实例关闭,指定端口关闭:redis-cli -p 6379 shutdown

    D)Redis启动后杂项基础知识:

      单进程:单进程模型来处理客户端的请求。对读写等事件的响应是通过对epoll函数的包装来做到的。Redis的实际处理速度完全依靠主进程的执行效率

      epoll是Linux内核为处理大批量文件描述符而作了改进的epoll,是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。

      默认16个数据库,类似数组下表从零开始,初始默认使用零号库,select命令切换数据库(select  1,切换到1号数据库)

      dbsize查看当前数据库的key的数量

      flushdb:清空当前库

      Flushall;通杀全部库

      统一密码管理,16个库都是同样密码,要么都OK要么一个也连接不上

      Redis索引都是从零开始

      为什么默认端口是6379 (配置文件里面配置的默认就是6379)

  • 相关阅读:
    Linux下汇编语言学习笔记51 ---
    Linux下汇编语言学习笔记50 ---
    Linux下汇编语言学习笔记47 ---
    Linux下汇编语言学习笔记46 ---
    Linux下汇编语言学习笔记45 ---
    Java奇葩笔试题
    Java奇葩笔试题
    Xcode 5 下的单元测试
    Xcode 5 下的单元测试
    Xcode5 统计单元测试覆盖率(仅限XCTest)
  • 原文地址:https://www.cnblogs.com/xuzekun/p/7440575.html
Copyright © 2011-2022 走看看