1. 使用Redis有哪些好处?

(1)读写性能优异

(2)支持数据持久化,支持AOF和RDB两种持久化方式

(3)支持主从复制,主机会自动将数据同步到从机,可以进行读写分离。

(4)数据结构丰富:除了支持string类型的value外还支持string、hash、set、sortedset、list等数据结构。

2. redis相比memcached有哪些优势?

(1)memcached所有的值均是简单的字符串,redis作为其替代者,支持更为丰富的数据类型

(2)redis的速度比memcached快很多

(3)redis可以持久化其数据

(4)Redis支持数据的备份,即master-slave模式的数据备份。

(5)使用底层模型不同,它们之间底层实现方式 以及与客户端之间通信的应用协议不一样。Redis直接自己构建了VM 机制 ,因为一般的系统调用系统函数的话,会浪费一定的时间去移动和请求。

(6)value大小:redis最大可以达到1GB,而memcache只有1MB

3. redis常见性能问题和解决方案:

(1) Master最好不要做任何持久化工作,如RDB内存快照和AOF日志文件

(2) 如果数据比较重要,某个Slave开启AOF备份数据,策略设置为每秒同步一次

(3) 为了主从复制的速度和连接的稳定性,Master和Slave最好在同一个局域网内

(4) 尽量避免在压力很大的主库上增加从库

(5) 主从复制不要用图状结构,用单向链表结构更为稳定,即:Master

这样的结构方便解决单点故障问题,实现Slave对Master的替换。如果Master挂了,可以立刻启用Slave1做Master,其他不变。

4. 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、 Redis和Memcache都是将数据存放在内存中,都是内存数据库。不过memcache还可用于缓存其他东西,例如图片、视频等等。 2、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储。 3、虚拟内存–Redis当物理内存用完时,可以将一些很久没用到的value 交换到磁盘 4、过期策略–memcache在set时就指定,例如set key1 0 0 8,即永不过期。Redis可以通过例如expire 设定,例如expire name 10 5、分布式–设定memcache集群,利用magent做一主多从;redis可以做一主多从。都可以一主一从 6、存储数据安全–memcache挂掉后,数据没了;redis可以定期保存到磁盘(持久化) 7、灾难恢复–memcache挂掉后,数据不可恢复; redis数据丢失后可以通过aof恢复 8、Redis支持数据的备份,即master-slave模式的数据备份。

6. Redis 常见的性能问题都有哪些?如何解决?

1.Master写内存快照

save命令调度rdbSave函数,会阻塞主线程的工作,当快照比较大时对性能影响是非常大的,会间断性暂停服务,所以Master最好不要写内存快照。

2.Master AOF持久化

如果不重写AOF文件,这个持久化方式对性能的影响是最小的,但是AOF文件会不断增大,AOF文件过大会影响Master重启的恢复速度。

3.Master调用BGREWRITEAOF

Master调用BGREWRITEAOF重写AOF文件,AOF在重写的时候会占大量的CPU和内存资源,导致服务load过高,出现短暂服务暂停现象。

7, redis 最适合的场景

Redis最适合所有数据in-momory的场景,虽然Redis也提供持久化功能,但实际更多的是一个disk-backed的功能,跟传统意义上的持久化有比较大的差别,那么可能大家就会有疑问,似乎Redis更像一个加强版的Memcached,那么何时使用Memcached,何时使用Redis呢?

如果简单地比较Redis与Memcached的区别,大多数都会得到以下观点:

1 、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
     2 、Redis支持数据的备份,即master-slave模式的数据备份。
     3 、Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用

redis value多大会影响性能_redis面试总结相关推荐

  1. redis value多大会影响性能_选择合适Redis数据结构,减少80%的内存占用

    前言 redis作为目前最流行的nosql缓存数据库,凭借其优异的性能.丰富的数据结构已成为大部分场景下首选的缓存工具. 由于redis是一个纯内存的数据库,在存放大量数据时,内存的占用将会非常可观. ...

  2. redis value多大会影响性能_事务对MySQL性能有什么影响?有无索引查找对其影响有多大?...

    推荐学习 阿里P8MySQL,基础/索引/锁/日志/调优都不误,一锅深扒端给你 抖音后端123面开挂,全靠这份啃了58天的「Java进阶核心知识集」 肝了30天,整出这份[分布式宝典:限流+缓存+通讯 ...

  3. MySQL:为什么用limit时,offset很大会影响性能

    点击上方"朱小厮的博客",选择"设为星标" 后台回复"加群"加入公众号专属技术群 来源:rrd.me/fe8TT 一,前言 首先说明一下My ...

  4. mysql id用什么类型_mysql 证明为什么用limit时,offset很大会影响性能

    首先说明一下MySQL的版本: mysql> select version(); +-----------+ | version() | +-----------+ | 5.7.17 | +-- ...

  5. redis session 超时时间_Shiro性能优化:解决Session频繁读写问题

    点击上方蓝色字体,选择"标星公众号" 优质文章,第一时间送达 作者 |  张永恒 来源 |  urlify.cn/YjEZNj 背景 Shiro 提供了强大的 Session 管理 ...

  6. 面试:为什么redis是单线程的,性能却很高?

    面试:为什么redis是单线程的,性能却很高? 1.数据全部存在内存中,在内存中读数据比磁盘中快的多 2.采用了非阻塞io,io多路复用技术 3.避免了线程切换的资源消耗

  7. java面试(二十五)--(1)redis为什么读写速率快性能好(2)说说web.xml文件中可以配置哪些内容(3)和的区别(4)扑克牌顺子

    1. redis为什么读写速率快性能好? 1.Redis将数据存储在内存上,避免了频繁的IO操作 2.Redis其本身采用字典的数据结构,时间复杂度为O(1),且其采用渐进式的扩容手段 3.Redis ...

  8. setnx是原子操作吗_Redis面试七连问,你能扛得住吗?

    1.使用redis有哪些好处? 速度快:因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1) 支持丰富数据类型:支持string,list,set,so ...

  9. 史上最全redis面试题及答案吊打面试官

    1,什么是Redis? 简单来说 redis 就是一个数据库,不过与传统数据库不同的是 redis 的数据是存在内存中的,所以读写速度非常快,因此 redis 被广泛应用于缓存方向.另外,redis ...

最新文章

  1. java工程webservice的应用案例
  2. MySQL 的 Binlog 日志处理工具(Canal/Maxwell/Databus/DTS)对比
  3. 9_InfluxDB常用函数(二)选择类函数(TOP() BOTTOM() FIRST() LAST() MAX() MIN() PERCENTILE())
  4. 完美解决NV4_disp.dll已正常停止工作”蓝屏问题
  5. strcpy 函数的实现
  6. A-Graph Games_2019牛客暑期多校训练营(第三场)
  7. 输出一行星花 1110 java
  8. 使用cdn和npm引入的区别_中央空调和新风系统有什么区别?有必要一起装吗?
  9. mongo数据排序和分页显示
  10. 以二进制输出64位类型的数据_Java入门第五课:Java基本数据类型与变量的声明...
  11. Ubuntu 搭建简单的git server
  12. VMware Horizon USB重定向排除特定设备
  13. Python 与金融科技2|数据的滑动平均值及多图可视化
  14. ecu的c语言编程,ecu中的程序是如何编写的
  15. 将打开网页以网页 仅HTML,网页保存的不同方法
  16. 微信小程序电影详情功能实现
  17. 领导给你安排这三个紧急任务(不是器重你而是利用你)
  18. Bia布刷题日记2022/2/15
  19. 2017 9 25翁凯html学习记录
  20. 【Android】蓝牙开发——经典蓝牙配对介绍(通过手机系统蓝牙演示)

热门文章

  1. caffe学习笔记17-find-tuning微调学习
  2. 概率图模型中信念传播
  3. OpenTTD 1.9.0-beta3 发布,开源模拟经营游戏
  4. MYSQL 加密函数的用法
  5. 一、MySQL数据库基础
  6. Linux 性能监测:Memory
  7. (42) Aeroo 模板实战
  8. Ibatis的类型处理器TypeHandler解析
  9. tensorflow入门之损失函数
  10. 项目中使用RDLC报表