zoukankan      html  css  js  c++  java
  • Redis入门

    Redis是什么:

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

    能干嘛:

    ①内存存储和持久化:redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务
    ②取最新N个数据的操作,如:可以将最新的10条评论的ID放在Redis的List集合里面
    ③模拟类似于HttpSession这种需要设定过期时间的功能
    ④发布、订阅消息系统
    ⑤定时器、计数器

    官网:

    ②.中文翻译的官网http://www.redis.cn/

    功能:(重要)

    数据类型、基本操作和配置
    持久化和复制,RDB/AOF
    事务的控制
    主从复制

    在Linux上安装可能出现的问题:

    运行make命令时故意出现的错误解析:

    gcc是linux下的一个编译程序,是C程序的编译工具。
    GCC(GNU Compiler Collection) 是 GNU(GNU's Not Unix) 计划提供的编译器家族,它能够支持 C, C++,  Objective-C, Fortran, 
    Java 和 Ada 等等程序设计语言前端,同时能够运行在 x86, x86-64, IA-64, PowerPC, SPARC 和 Alpha 等等几乎目前所有的硬件平台
    上。鉴于这些特征,以及 GCC 编译代码的高效性,使得 GCC 成为绝大多数自由软件开发编译的首选工具。虽然对于程序员们来说,编译器只是一个
    工具,除了开发和维护人员,很少有人关注编译器的发展,但是 GCC 的影响力是如此之大,它的性能提升甚至有望改善所有的自由软件的运行效率,
    同时它的内部结构的变化也体现出现代编译器发展的新特征。

     首先安装gcc

    yum install gcc-c++
    二次make:jemalloc/jemalloc.h:没有那个文件或目录
    如果之前使用make安装之后,报了这个错,一定要将原来文件删除再次进行安装
    不然会报错找不到文件夹

    安装:

    下载,解压,安装

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

     安装成功之后,下面的命令启动服务器

     $ src/redis-server
    客户端测试命令:
    $ src/redis-cli
    redis> set key val1
    OK
    redis> get key
    "val1"

    一般不建议直接使用源码,所以此时:在根目录建立myredis文件夹

    赋值配置文件的代码

    cp redis.conf /myredis

    启动:

    redis-server /myredis/redis.conf

     进入客户端的编译测试系统:

    redis-cli -p 6379

     

     测试:

    此时可以说安装成功!

    启动之后的讲解:

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

     

    redis-benchmark

     

     1.单进程

    单进程模型来处理客户端的请求。对读写等事件的响应
    是通过对epoll函数的包装来做到的。Redis的实际处理速度完全依靠主进程的执行效率
    epoll是Linux内核为处理大批量文件描述符而作了改进的epoll,是Linux下多路复用IO接口select/poll的增强版本,
    它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。

      

    2.默认16个数据库,类似数组下表从零开始,初始默认使用零号库
    设置数据库的数量,默认数据库为0,可以使用SELECT <dbid>命令在连接上指定数据库id
      databases 16
    3.select命令切换数据库
    默认第一个库是0
    不同库之间的数据是不相通的

    4.dbsize查看当前数据库的key的数量
    系统默认自带的有key

     

    5.flushdb:清空当前库
     
    6.Flushall;通杀全部库
     
    7.统一密码管理,16个库都是同样密码,要么都OK要么一个也连接不上
     
    8.Redis索引都是从零开始
  • 相关阅读:
    【2021-04-15】台上一分钟,背后十年功
    【2021-04-14】买了人生中的第一个车位
    计算机网络实验部分
    乘积最大子数组
    计算各个位数不同的数字个数
    周总结
    最长回文子序列
    最长回文串
    回文子串
    拼图
  • 原文地址:https://www.cnblogs.com/Mrchengs/p/10044925.html
Copyright © 2011-2022 走看看