美文网首页大数据 爬虫Python AI Sql
基于redis的分布式缓存(笔记)

基于redis的分布式缓存(笔记)

作者: 半夏_mint | 来源:发表于2017-03-10 13:34 被阅读0次

一、概要

 redis是一种面向‘键/值’对类型数据的分布式NoSQL数据库系统(非关系型数据库)。高性能,持久化,高并发。数据是缓存再内存中的。

二、名词解释

 特性——持久化:周期性地把更新的数据写入磁盘和更改的操作写入追加的记录文件,实现主从同步(master-slave)。

主从同步(master-slave):目的——分担读写压力,主机可负责读写服务,从机只负责读。同时根据业务需求,支持数据的弱一致性(微博),以及强一致性(淘宝)。

一主多从结构:

主从同步机制:

主从同步策略:  主从刚刚连接的,先尝试进行部分同步,如果部分同步失败再进行全同步。同时slave可以再任何时候发起全同步的请求。注:http://sofar.blog.51cto.com/353572/1413024/

三、存储类型

string

string--key-value类型,value不仅是string还可以是数字类型。

hash

hash是集合类型,适用于存储对象。

memcache的数据存储结构:

缺点:当修改某一项的值时,需要将整个对象取出反序列化更新后再进行序列化存储回去,增大了开销,并且不适合并发操作的场合。

redis的数据存储结构:

可以对单个数据进行操作,如更新某个数据的值:hset user username wangyuan;删除单个数据:hdel user username

List

list,链表。类似于数组,顺序存储。可以使用指针从头到尾定位数据。

Lists的另一个应用就是消息队列,可以利用Lists的PUSH操作,将任务存在Lists中,然后工作线程再用POP操作将任务取出进行执行。Redis还提供了操作Lists中某一段的api,你可以直接查询,删除Lists中某一段的元素。

Sets

sets是一个集合,用于存放不重复值的组合。

例:微博,可以将一个用户所有的关注人存在一个集合中,将其所有的粉丝存在一个集合。

Sorted Sets

与sets相比,sorted sets增加了一个权重的概念,因此集合中的元素可以根据权重进行有序排列。例:存储一个班同学成绩的sorted sets,集合的value可以是同学的学号,而权重可以是学生的成绩。

http://redisdoc.com/官网

相关文章

  • 分布式锁实现

    基于数据库实现分布式锁基于缓存(redis,memcached)实现分布式锁基于Zookeeper实现分布式锁 s...

  • 基于redis的分布式锁

    分布式锁实现方案 基于数据库实现分布式锁 基于缓存(redis,memcached,tair)实现分布式锁 基于Z...

  • 分布式锁

    几种实现方式 基于数据库实现分布式锁 基于缓存(Redis,memcached,tair)实现分布式锁 基于Zoo...

  • 分布式锁的实现-Redisson

    常见3种分布式的实现比较 基于数据库实现分布式锁 基于缓存实现分布式锁(redis,mc) 基于Zookeeper...

  • golang基于redis和机器内存的多级缓存

    matryoshka 支持分布式环境,基于redis和机器内存(memory)的多级缓存。 一级缓存使用 free...

  • 分布式锁的实现方案

    一,分布式锁的实现方案 1,基于数据库实现分布式锁 2,基于缓存实现数据库锁(redis) 3,基于zookeep...

  • 分布式锁三种实现方式(数据库实现,缓存Redis等,Zookee

    分布式锁三种实现方式: 1. 基于数据库实现分布式锁; 2. 基于缓存(Redis等)实现分布式锁; 3. 基于Z...

  • 分布式锁

    针对分布式锁的实现,目前比较常用的有以下几种方案: 基于数据库实现分布式锁 基于缓存(redis,memcache...

  • 18.分布式缓存Redis

    分布式缓存 -- 基于Redis集群解决单机Redis存在的问题 单机的Redis存在四大问题: 0.学习目标 1...

  • 高并发架构修炼

    redis缓存策略 分布式缓存一致性 redis常见的问题 redis分布式锁 http://ifeve.com/...

网友评论

    本文标题:基于redis的分布式缓存(笔记)

    本文链接:https://www.haomeiwen.com/subject/vrungttx.html