• 与Redis的初次相识,Redis安装、启动与配置


    原文首发于博客园,作者:后青春期的Keats;地址:https://www.cnblogs.com/keatsCoder/ 转载请注明,谢谢!

    最近有幸为公司的项目中引入了Redis,可以在实战中学习是一件很幸福的事情。故在粗读《Redis深度历险:核心原理和应用实践》后,购入《Redis开发与运维》继续学习Redis。将学习过程中一些重点内容记录下来分享给各位小伙伴

    按照目前的学习情况及对Redis的认识,我打算理出来下面的知识结构。每个二级节点作为一篇独立博客。本篇是第一部分-Redis基础

    1585571520993

    Redis优点

    1. 速度快、为什么快?

      1. 数据在内存中
      2. 使用C语言编写,C语言和操作系统之间的路更短
      3. 单线程,避免的线程的调配与抢夺
      4. 作者编码水平高
    2. 基于键值对,很好理解

      Redis的键只支持String类型,值的类型有:String、hash、list、set、zset。以及由 String演变的 bitmaps HyperLogLog GEO 这些丰富的类型可以让我们开发者开发出很多有意思的应用

    3. 简单稳定

      Redis在3.0之前,代码只有2W行,3.0加了集群也只有5W行。随随便便一个后台管理系统的代码量(dog奈何是C语言,对于Javaer看源码成本稍微有些高)。而且是单线程模型,客户端开发很简单,Java客户端如著名的Jedis API和原生的API命名很类似,学习成本也不大。并且Redis已经在各大公司使用。足以说明其稳定性。

    4. 持久化

      作为内存数据库,有个痛点就是持久化的问题。总不能断电了数据就丢掉。Redis提供了RDB和AOF两种持久化方式,保证了数据的持久性

    5. 主从、哨兵、集群

      3.0版本后原生支持多机,很方便

    Redis不足

    1. Redis数据是存储内存中的,而内存的价格决定了它无法存储特别大规模的数据。
    2. 数据是由冷、热之分的。例如:商品信息和用户查看记录。商品信息属于热数据,每一个用户都可能查看;用户查看记录属于冷数据,只有他自己偶尔看一下。如果将冷数据存储到Redis中。可以说是对Redis极大的浪费。

    Redis安装

    Linux下安装Redis

    redis版本号中间的数字为奇数代表下一个偶数版本的开发版本。建议使用中间为偶数的稳定版。我这里使用 3.0.7 版本

    下载:

    wget http://download.redis.io/releases/redis-3.0.7.tar.gz
    

    如果提示找不到命令,使用 yum 安装 wget 命令: yum -y install wget

    解压:

    tar xzf redis-3.0.7.tar.gz
    

    建立Redis目录软连接。这样做是为了屏蔽Redis和版本号的关联,便于升级版本

    ln -s redis-3.0.7 redis
    

    安装:

    # 检查有没有安装 gcc,
    gcc -v
    # 如果是 commond not found 则没有安装,需要输入以下命令安装
    yum install gcc
    # 开始安装
    cd redis
    make # 编译
    make install # 安装
    

    启动Redis

    redis-server
    

    如果需要配置命令启动,可以通过以下的方式:

    redis-server --configKey1 v1 --cK2 v2
    

    生产环境一般建议将参数写到配置文件中,然后指定配置文件启动

    redis-server /opt/redis/redis.config # 配置文件的绝对路径
    

    Redis基础配置

    配置名 说明 提醒
    port 端口,默认6379
    logfile 日志文件 配置到xxx文件而不是目录
    dir Redis工作目录,存储日志文件和持久化文件

    Redis客户端

    redis-cli -h {host} -p {por
    t} # 默认是 127.0.0.1 6379
    

    关闭Redis

    shutdown

    ctrl -c 前台运行的话,关闭命令行

    不建议 kill -9 强制关闭,会来不及持久化,导致数据丢失

  • 相关阅读:
    Java++:一文搞懂分布式锁及其业务场景
    Get MSN ADS
    删除废弃的全文索引
    门户网页分页(pagination Style)
    SQL Server 无法查看属性
    FileUpload Control In ASP.NET2.0
    根据IP和掩码获取主机IP区域
    IIS 使用域用户
    Get MSN ADS by xmlHttpRequest
    二进制时钟
  • 原文地址:https://www.cnblogs.com/keatsCoder/p/12635967.html
Copyright © 2020-2023  润新知