redis使用与学习

首页 > 经验 > 作者:YD1662022-10-31 22:43:53

一、Redis介绍

  Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

  它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。可以满足很多应用场景。还提供了键过期,发布订阅,事务,流水线等附加功能。

 Redis使用场景,手操项目架构实战 | 什么是Redis?:

c/c linux服务器开发高级架构师学习路线大纲:,学习视频点击:

二、redis使用场景

  存储缓存、投票、会话session、排行榜、计数器、发布订阅、消息队列等,其中最主要的使用场景就是存储缓存和会话Session。

  当用作存储缓存的时候,如下图所示:

redis使用与学习,(1)

  第一次访问的时候Redis数据库没有数据,因此先从MySQL中查询,然后再存到Redis内存数据库;第二次访问的时候直接就可以从Redis数据库中得到数据。

  当Redis用作缓存会话Session时。如下图所示:

redis使用与学习,(2)

  所有应用都是对Redis进行访问,这样分布式的应用程序共享一份会话Session。

三、快速安装

  Redis3.0以前》不支持集群》基于客户端实现

  Redis3.0以后》集群(Redis Cluster)》基于服务端实现
  Redis的安装很简单,如下所示:

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

  关于安装的详细步骤可以参考(Mac版本,Linux上的安装步骤一致):Mac下安装Redis及Redis Desktop Manager

  其余多种模式的部署请参考:Redis学习之4种模式实践及机制解析(单机、主从、哨兵、集群)

  Redis安装目录下常见文件如下:

redis使用与学习,(3)

四、通讯原理概述

  Redis的速度是很快的,基于以下原因:

  Redis 服务器是一个事件驱动程序, 服务器处理的事件分为时间事件和文件事件两类。

  由于Redis的文件事件是单进程,单线程模型,但是确保持着优秀的吞吐量,IO多路复用起到了主要作用。简单解释多路复用就是一个线程监听多个套接字,谁先有读写事件就处理谁,减少线程切换开销和IO阻塞,以提高CPU利用率。

  Redis访问过程如下:

redis使用与学习,(4)

首页 1234下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.