• Linux:redis数据库源码包安装


    介绍

    1.关系数据库与非关系型数据库
    1.1关系型数据库
    1)一个结构化的数据库,创建在关系模型基础上,一般面向于记录
    2)包括Oracle、MySQL、SQL Server、Microsoft Access、DB2等

     非关系型数据库
    1)除了主流的关系型数据库以外的数据库,都认为是非关系型的 

    2)包括Redis、MongBD、Hbase、CouhDB等

    3.Redis简介
    3.1 Redis基于内存运行并支持持久化,采用key-value(键值对)的存储形式

    3.2 优点


    1)具有极高的数据读写速度

    redis是将数据存放到内存中,由于内容存取速度快所以redis被广泛应用在互联网项目中,redis有点:存取速度快,官方称读取速度会达到30万次每秒,写速度在10万次每秒最有,具体限制于硬件。


    2)支持丰富的数据类型

    redis是用C语言开发的一个开源的高性能键值对(key-value)数据库。它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止Redis支持的键值数据类型如下:

    字符串类型 散列类型 列表类型 集合类型

    3)支持数据的持久化
    即可以将内存中的数据异步写入到硬盘中,同时不影响继续提供服务。

    缺点:对持久化支持不够良好。

    所以redis一般不作为数据的主数据库存储,一般配合传统的关系型数据库使用
    .
    4)原子性---redis的所有操作都是原子性的

    5)支持数据备份---master-slave模式的数据备份

    6)功能丰富 

    redis的应用场景

    缓存(数据查询、短连接、新闻内容、商品内容等等)。(最多使用) 分布式集群架构中的session分离。 聊天室的在线好友列表。 任务队列。(秒杀、抢购、12306等等) 应用排行榜。 网站访问统计。 数据过期处理(可以精确到毫秒)


    下载

    http://download.redis.io/releases/redis-5.0.4.tar.gzicon-default.png?t=N7T8http://download.redis.io/releases/redis-5.0.4.tar.gz

    下载tar归档压缩包 或在Linux里执行下面的命令

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

    安装

     把tar归档包放入Linux

    yum -y install gcc*
    tar xfz redis-5.0.4.tar.gz -C /usr/src/
    cd /usr/src/redis-5.0.4/
    make
    make install

    ok

     

    cd utils/
    ./install_server.sh 

     

    如果你没有需要修改的可以和我一样一直回车保持默认即可,如果需要修改那么在后面直接输入

     

    1. vim /etc/redis/6379.conf
    2. 这里你用的什么端口号那个配置文件就是什么.conf
    3. 找到70 行 在后面添加你的ip

     

    /etc/init.d/redis_6379 restart

    登录测试

     

    redis-cli -h 192.168.254.253 -p 6379

    redis-cli -h 本机ip -p 指定的端口号

    输入exit可以退出 


    速度测试 

     redis-benchmark测试工具--可有效测试服务的性能
    模拟 N 个客户端同时发出 M 个请求。 (类似于 Apache ab 程序)

    用法 redis-benchmark [-h ][-p ] [-c ][-n ]> [-k ]

    选项:

    选项    说明
    -h     主机名 (默认 127.0.0.1)
    -p     主机端口 (默认 6379)
    -s     UNIX socket (会覆盖 -h -p 设置的内容)
    -a     密码(密码错误之类不会直接保错,而是在操作时才会保错,这时可以使用 Redis 的 AUTH 命令再次认证)
    -c     客户端的并发数量(默认是50)
    -n     客户端请求总量(默认是100000)
    -d         使用 SET/GET 添加的数据的字节大小 (默认 2)
    -dbnum         选择一个数据库进行测试 (默认 0)
    -k     客户端是否使用keepalive,1为使用,0为不使用,(默认为 1)
    -r 使用 SET/GET/INCR 命令添加数据 key, SADD 添加随机数据,keyspacelen 指定的是添加 键的数量
    -P         每个请求 pipeline 的数据量(默认为1,没有 pipeline )
    -q                仅仅显示redis-benchmark的requests per second信息
    --csv            将结果按照csv格式输出,便于后续处理
    -l                循环测试
    -t         可以对指定命令进行基准测试
    -I                空闲模式 只打开N个空闲连接并等待。

    redis-benchmark -h 192.168.254.253 -p 6379 -c 100 -n 100000

     向redis服务器发送100个并发连接与100000个请求 

    处理完这些需要0.48秒,因为服务器配置不同所以大家用的秒肯定不一样

     

    redis-benchmark -h 192.168.254.253 -p 6379 -q -d 100

    测试存取大小为100B的数据包的性能

    redis-benchmark -t set,lpush -n 100000 -q

     测试本机上redis服务在进行set与lpush操作时的性能

  • 相关阅读:
    SQL必需掌握的100个重要知识点:使用子查询
    人脸识别:概述【Loss:Softmax loss、Triplet loss、Centre loss、SphereFace、CosFace、ArcFace】
    Spark系列之Spark概述
    华为HCIA无线题库(H12-811)
    贾扬清开源 AI 框架 Caffe | 开源英雄
    request、response、session、application、out对象主要方法
    前端技术koa/egg和es6入门
    k8s apiserver启动执行流程之aggregatorServer
    Java并发编程—Thread类中的start()方法如何启动一个线程?
    C语言中typedef和define对比分析
  • 原文地址:https://blog.csdn.net/w14768855/article/details/133752744