zoukankan      html  css  js  c++  java
  • Redis的好处知识

    参考文章
    http://www.cnblogs.com/wupeiqi/articles/5132791.html 
    使用Redis有哪些好处?
    
    (1) 速度快,因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1)
    
    (2) 支持丰富数据类型,支持string,list,set,sorted set,hash
    
    (3) 支持事务,操作都是原子性,所谓的原子性就是对数据的更改要么全部执行,要么全部不执行
    
    (4) 丰富的特性:可用于缓存,消息,按key设置过期时间,过期后将会自动删除
    
    
    2. redis相比memcached有哪些优势?
    
    (1) memcached所有的值均是简单的字符串,redis作为其替代者,支持更为丰富的数据类型
    
    (2) redis的速度比memcached快很多
    
    (3) redis可以持久化其数据
    
    
    3. redis常见性能问题和解决方案:
    
    (1) Master最好不要做任何持久化工作,如RDB内存快照和AOF日志文件
    
    (2) 如果数据比较重要,某个Slave开启AOF备份数据,策略设置为每秒同步一次
    
    (3) 为了主从复制的速度和连接的稳定性,Master和Slave最好在同一个局域网内
    
    (4) 尽量避免在压力很大的主库上增加从库
    
    (5) 主从复制不要用图状结构,用单向链表结构更为稳定,即:Master <- Slave1 <- Slave2 <- Slave3...
    
    这样的结构方便解决单点故障问题,实现Slave对Master的替换。如果Master挂了,可以立刻启用Slave1做Master,其他不变。
    
    
    MySQL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据
    
     相关知识:redis 内存数据集大小上升到一定大小的时候,就会施行数据淘汰策略。redis 提供 6种数据淘汰策略:
    
    voltile-lru:从已设置过期时间的数据集(server.db[i].expires)中挑选最近最少使用的数据淘汰
    
    volatile-ttl:从已设置过期时间的数据集(server.db[i].expires)中挑选将要过期的数据淘汰
    
    volatile-random:从已设置过期时间的数据集(server.db[i].expires)中任意选择数据淘汰
    
    allkeys-lru:从数据集(server.db[i].dict)中挑选最近最少使用的数据淘汰
    
    allkeys-random:从数据集(server.db[i].dict)中任意选择数据淘汰
    
    no-enviction(驱逐):禁止驱逐数据
    
    
    5. Memcache与Redis的区别都有哪些?
    
    1)、存储方式
    
    Memecache把数据全部存在内存之中,断电后会挂掉,数据不能超过内存大小。
    
    Redis有部份存在硬盘上,这样能保证数据的持久性。
    
    2)、数据支持类型
    
    Memcache对数据类型支持相对简单。
    
    Redis有复杂的数据类型。
    
    
    3),value大小
    
    redis最大可以达到1GB,而memcache只有1MB
  • 相关阅读:
    Python之推导式笔记
    利用ShardingSphere-JDBC实现分库分表--配置中心的实现
    利用ShardingSphere-JDBC实现分库分表
    MGR安装记录
    学习RadonDB源码(三)
    学习RadonDB源码(二)
    学习RadonDB源码(一)
    Spring Cloud学习笔记--Spring Boot初次搭建
    一次单核CPU占用过高问题的处理
    MySQL AutoCommit带来的问题
  • 原文地址:https://www.cnblogs.com/Liang-jc/p/9283269.html
Copyright © 2011-2022 走看看