zoukankan      html  css  js  c++  java
  • Redis 入门到分布式 (一)Redis初识

    个人博客网:https://wushaopei.github.io/    (你想要这里多有)

    一、Redis特性目录

    Redis的特性:

    • 速度快
    • 持久化
    • 多种数据结构
    • 支持多种编辑语言
    • 功能丰富
    • 简单 : 代码短小精悍,使用简单
    • 主从复制:实现高可用的基础
    • 高可用、分布式

    二、特性-详解

    1、特性1-速度快

    1)速度快的体现:

    每秒的读取速度最高可达: 10w OPS

    Redis 的数据是保存在内存上的,所以读取快;

    同时底层由c语言编写,编译高效;

    又由于是单线程模型,具有线程安全的特性。

    2)计算机存储介质的速度排行

    3)内存的随机读写性能表:

    2、特性2-持久化

    持久化功能:

    Redis所有数据保持在内存中,对数据的更新将异步地保存到磁盘上。

    3、特性3-数据结构

     Redis 具有String、HashListSetzSet共五种数据结构

    后续衍生扩展的数据结构:

    • BitMaps : 位图

                 使用位图可以用很小的内存实现很高效的存储

    • HyperLogLog:超小内存唯一值技术

                由jdk1.8.75开始提供。

    • GEO:地理信息定位

                 提供对于地理位置的定位服务,比如:用于查找运算出离你最近的餐馆等

    4、特性4-多语言客户端

      支持Redis的语言和应用非常多而且广泛。

    5、特性5-功能丰富

    Redis本身也支持发布订阅,基于消息发布的功能。

    Redis也支持Lua脚本,以及简单的事务功能;并提供pipeline用于并发的控制。

    6、特性6-简单

    Redis的代码实现只有23000行,由C语言编写。简单而健壮。

    7、特性7-复制

    Redis提供了主从复制的功能,主服务器上的功能可以同步到从服务器上。

    8、特性8-高可用分布式

    Redis提供了Redis-Sentinel,即哨兵实现高可用;以及Redis-Cluster支持分布式。

    三、redis典型使用场景

    1、Redis典型应用场景:

    缓存系统 、计数器、消息队列系统、排行榜、社交网络、实时系统

    2、缓存系统:

    当用户访问App Server时,AppServer会首先从cache(redis)里去取数据,如果cache中有就直接返回,如果没有,就从Strage中去取数据;为了下次方便取数据,会将Storage总能查到的数据同步副本到cache中,方便下次用户直接去cache(redis)中获取到。

    3、计数器:

    如图中,一条微博的转发数、评论数都可以使用redis的计数器功能来进行记录。

    4、消息队列系统:

    Redis提供了消息的发布、订阅这一与消息队列系统类似的模型,当对消息队列的要求不是太高时,可以考虑使用Redis.

    5、社交网络:

    很多社交媒体的功能都会使用Redis来实现,例如:粉丝数、关注数,还有共同关注,已经时间轴列表等。比如新浪微博。

    6、实时系统:

    使用位图功能对垃圾邮件进行过滤,实时系统的处理。

    四、redis三种启动方式介绍

    1、Redis 安装:

    在线下载redis安装包:

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

    解压缩:

    tar -xzf redis-3.0.7.tar.gz

    建立一个软连接,便于后期升级版本:

    In -s redis-3.0.7 redis

    进入解压缩文件夹内,并执行安装:

    cd redis

    make &&  make install

    2、Redis可执行文件说明:

    3、三种启动方法:

    • 最简启动
    • 配置文件启动
    • 动态参数启动

    4、 最简启动:

       redis-server

    1)验证:

      ps -ef |  grep redis

      netstat -antpl | grep redis

      redis-cli -h ip -p port ping

    5、指定端口号启动

      redis-server --port 6379  

     6、通过配置文件启动

    Redis-server configPath 

    7、三种启动方式比较:

    生产环境选择配置启动;

    单击多实例配置文件可以用端口区分开;

    8、简单的客户端连接:

    [root@rich bin]# ./redis-cli -h 192.168.254.111 -p 6379
    192.168.254.111:6379> ping
    PONG
    192.168.254.111:6379> set hello world
    OK
    192.168.254.111:6379> get hello
    "world"
    192.168.254.111:6379>

    9、Redis客户端返回值:

    五、redis常用配置


  • 相关阅读:
    前后端交互, 安装drf, restful接口规范, pycharm断点调试
    django中文设置, axios, CORS, 全局js配置, Vue配置jq + bs
    js原型, Vue项目环境搭建, Vue项目目录结构, Vue项目生命周期, 小组件使用, 全局样式, 路由跳转, 组件的生命周期钩子, 路由传参
    Vue组件
    Vue表单指令, 条件指令, 循环指令, 成员
    question1 赋值运算操作符
    CH15 面向对象程序设计
    CH12 动态内存
    CH11 关联容器
    CH10 泛型算法
  • 原文地址:https://www.cnblogs.com/wushaopei/p/11979100.html
Copyright © 2011-2022 走看看