• Redis 介绍及安装配置


    简介

    Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。

    Redis 与其他 key - value 缓存产品比较有以下三个特点:

      Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。memcache 不支持。

      Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。

      Redis支持数据的备份,即master-slave模式的数据备份,memcache 不支持。

    应用场景

    消息模式

    队列模式         #所有生产者把生产的消息放入同一个列表,等着消费者去消费

      所有应用按顺序插入值到list1 中,消费者通过rpop/lpop 命令,按顺序执行删除命令,此命令会返回被删除的值,此过程可以理解为消息的消费。


    订阅发布模式       #一个频道,客户端订阅频道。发送者发送关消息,订阅者接收消息。场景:微博关注
      SUBSCRIBE mq1 #消费者先订阅,订阅频道可以事先不存在
      PUBLISH mq1 "hello man" #生产者往频道推送消息

    Redis 特性

    1.性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。

    2.丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。

    3.原子 – Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。

    4.丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。

    Linux 下安装

    下载地址:http://redis.io/download,下载最新稳定版本。

    本教程使用的最新文档版本为 2.8.17,下载并安装:

    $ wget http://download.redis.io/releases/redis-2.8.17.tar.gz
    $ tar xzf redis-2.8.17.tar.gz
    $ cd redis-2.8.17
    $ make

    make完后 redis-2.8.17目录下会出现编译后的redis服务程序redis-server,还有用于测试的客户端程序redis-cli,两个程序位于安装目录 src 目录下:

    下面启动redis服务.注意这种方式启动redis 使用的是默认配置。

    $ cd src
    $ ./redis-server

    也可以通过启动参数告诉redis使用指定配置文件使用下面命令启动。

    $ cd src
    $ ./redis-server ../redis.conf

    redis.conf 是一个默认的配置文件。我们可以根据需要使用自己的配置文件。

    启动redis服务进程后,就可以使用测试客户端程序redis-cli和redis服务交互了。 比如:

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

    redis 配置

    1、daemonize介绍

      yes  以守护进程方式在后台启动

      no  启动后占用当前终端

    2、设置密码

      requirepass   test123

      重启服务生效

    4、开启远程访问

      bind 127.0.0.1      #更改为0.0.0.0

      protected-mode no    注:在redis3.2之后,redis增加了protected-mode,在这个模式下,即使注释掉了bind 127.0.0.1,再访问redisd时候还是报错,所以需要配置为这样。

    5、关于持久化详见该文章

    同一台服务器配置多个实例时配置

      1.更改端口,防止冲突
      2.更改 pidfile
      3.更改 logfile

    命令

    redis-server   redis.conf                #指定文件来启动,不指定会加载默认配置启动
    
    redis-cli -h 1.1.1.1 -p 6380           #端口不是默认的,连接时需指定,不指定IP默认访问 127.0.0.1

    登陆后操作:
    auth passwd                  #如果设置了require pass 需要登陆后认证否则无法操作
    SHUTDOWN                    #关闭数据库,比kill 更好的关闭命令
    config get *                  #获取当前所有配置信息
    config set loglevel "notice"        #设置日志级别,只在当前生效,重启后失效
    type name                    #查看字段类型
    info
    cliet list
    monitor                     #监控redis 上面执行操作,当前终端显示其他客户端对redis的操作
    save                       #
    无持久化策略时执行此命令会自动生成dump.rdb ,只要有此文件在redis 目录中,启动redis 后会自动加载该文件把数据#加载到内存当中去。
    
    
    
  • 相关阅读:
    每日踩坑 2018-01-09 WebAPI会如何面对URL中的空串string参数?
    每日踩坑 2018-12-25 【Unable to convert MySQL date/time value to System.DateTime】异常
    面向对象设计原则 单一职责原则(Single responsibility principle)
    C# EF Attach 与 Entry
    每日踩坑 2018-11-26 MVC Razor ActionLink 生成的URL中多生成了一个参数 ?length=n
    工具 在 Nuget 发布自己的包
    LoadRunner中 host-mapping的Capture Level说明
    使用loadrunner录制脚本的思路和注意要点
    LR两种录制模式的区别
    LoadRunner脚本参数化之自动关联和手动关联
  • 原文地址:https://www.cnblogs.com/fanggege/p/10314538.html
Copyright © 2020-2023  润新知