网易云课堂上面的总结:

一.redis使用的场景?

answer:把用户信息缓存到redis。通过incr做id自增操作(例如单据编号自增)。常用的报表数据查询(hash).

二.常用数据结构?

1.string:简单的k_v类型。使用场景(微博上,粉丝数,常规计数)

常用命令:get set incr decr Mget

2.list:链表类型。使用场景:(微博的关注列表,粉丝列表)

常用命令:Lpush Rpush Lpop Rpop Lrange

3.set:集合,一堆不重复的组合,利用set可以存储一些集合性的数据。使用场景:共同关注,共同喜好,二度好友。

常用命令:Sadd(向集合中添加一个或多个成员)  Spop(移除并返回集合中的一个随机元素) Smember(返回集合中的所有成员) Sunion(返回给定集合的所有并集)

4.sorted set:区别set的地方是,可以通过额外的score参数来为成员排序,并且插入是有序的,即自动排序。使用场景(排行榜,按照用户投票和时间排序)

常用命令:Zadd  Zrange Zrem  Zcard

三.最多往redis里面塞过多少条数据?

answer:五万条?

四.单台内存用完了怎么办?

关键点:最大内存阀值(maxmemory),内存回收策略(maxmemory-plicy),LRU算法

LUR(least recently used,最近最少使用)算法:根据数据的历史访问记录来淘汰数据

伍.如果缓存的数据比单台服务器的内存要大,怎么处理?

关键字:redis集群redis cluster

场景:假如有20G数据需要存redis怎么办?

answer:做redis集群,假如一台服务器是4G内存,那么起码要七台,毕竟还有什么操作系统内存巴拉巴拉的。

集群就会引出redis_cluster。

那么redis怎么做内存分配呢?

例如火车票:每一节车厢可以做很多人,根据你的车票信息找到对应的座位,火车根据不同的座位号划分不同的车厢(这里车厢代表属于哪台服务器)

这个车票号怎么生成呢?

这叫要说到怎么计算slot(槽->车牌号),通过crc 16_hash(key)计算出唯一hash值,然后slot = hash % 16384(redis最大存储)

既然找到了车票号怎么通过车票号找到对应的车厢呢(服务器)?

假如不知道随机插入到第N台服务器,假如这个车牌号属于这个车厢,那么会返回ok,如果不属于则会重定向告诉你需要指向哪台服务器。

但是这会存在一个性能问题,假如1000个请求过来,每次都找错了,那不是本来1000次的请求要请求2000次?

这个时候可以把slot的计算放在客户端,客户端缓存slot的分配信息。然后我们就可以直接定位到redis_service,如果客户端发送的slot信息有误,那么当我们收到重定向响应的时候更新该slot分配信息。

六:数据放在redis有没有碰到过数据丢失的情况?

关键点:持久化机制主从复制

转载于:https://www.cnblogs.com/-cyh/p/10520488.html

redis 实战面试相关推荐

  1. 最新微服务、MySQL、Nginx加Redis实战,助你成功向阿里P8进军!

    前言 当下互联网时代,国际社会发展迅速,技术革新更加迅猛.未来智能时代,是一个数据时代,而如何处理好这些数据,就是科技发展的趋势. 本文主要为大家介绍一些2020年阿里P8对标学习教程,涵盖微服务架构 ...

  2. 腾讯、阿里、百度高工都点头称赞的“Redis 实战超全笔记”,不看你就亏大发了

    写在开头 如何系统,全面,的学习redis呢? 我的一个程序员朋友,在之前有面试 Java 开发工程师岗位时,居然大部分的面试问题都是关于 Redis 的,他都差点都忘记了自己应聘的是 Java 工程 ...

  3. 不看你就亏了,最新最全的腾讯,阿里、百度、美团等大厂都在用的Redis实战

    不要小看一个redis 任何一家公司的招聘信息都包含一段redis的需求. 不要小看一个redis 你能在互联网搜索到的很多文章都讲错了,面试会有很多坑. 不要小看一个redis 搞懂它是你通向分布式 ...

  4. 2021-03-23 - 高性能 Redis 实战

    1.应用场景 主要用于学习Redis 底层实现,编程思想,以及可参考借鉴的技术, 同时在日常开发中如何高效实践高性能 Redis服务. 2.学习/操作 1.文档阅读 高性能 Redis 实战 | La ...

  5. 视频教程- 19年录制Redis实战教程 高可用秒杀分布式锁布隆过滤器实战 SpringBoot教程整合-Java

    19年录制Redis实战教程 高可用秒杀分布式锁布隆过滤器实战 SpringBoot教程整合 7年的开发架构经验,曾就职于国内一线互联网公司,开发工程师,现在是某创业公司技术负责人, 擅长语言有nod ...

  6. 腾讯,阿里、百度、美团等大厂都在用的Redis实战,不看你就亏了

    不要小看一个redis 任何一家公司的招聘信息都包含一段redis的需求. 不要小看一个redis 你能在互联网搜索到的很多文章都讲错了,面试会有很多坑. 不要小看一个redis 搞懂它是你通向分布式 ...

  7. redis(二)redis实战 使用redis进行文章的排序

    2019独角兽企业重金招聘Python工程师标准>>> http://www.beckbi.cn/?p=172 redis实战使用redis进行文章的排序 转载于:https://m ...

  8. C# Redis实战(六)

    六.查询数据 在C# Redis实战(五)中介绍了如何删除Redis中数据,本篇将继续介绍Redis中查询的写法. 1.使用Linq匹配关键字查询 using (var redisClient = R ...

  9. 怎么查询redis缓存的数据_阿里开发十年写出这份「Redis简明教程」+「Redis实战」请你查收...

    Redis是啥?用Redis官方的话来说就是: Redis is an open source (BSD licensed), in-memory data structure store, used ...

  10. Redis实战之征服 Redis + Jedis + Spring (三)

    一开始以为Spring下操作哈希表,列表,真就是那么土.恍惚间发现"stringRedisTemplate.opsForList()"的强大,抓紧时间恶补下. 通过spring-d ...

最新文章

  1. 算法基础知识科普:8大搜索算法之AVL树(中)
  2. 双链表偶数节点求和java_java--删除链表偶数节点
  3. 【迁移学习(Transfer L)全面指南】Domain-Adversarial Training:基于对抗的迁移学习方法
  4. 第六十六篇、OC_Sqlite数据库操作
  5. opencv中的imwrite如何保存_如何把公众号的文章用文档保存到电脑中?
  6. 05-传统开发模式DAO
  7. python选项卡控件_python GUI库图形界面开发之PyQt5选项卡控件QTabWidget详细使用方法与...
  8. python下载晚上excel_Python自动操控excel,一小时解决你一天的工作
  9. linux集群组建和管理,Redis集群搭建与管理
  10. Fantom已开始网络升级,大约需2个小时
  11. ORACLE查看某个表空间里有哪些表
  12. Node.js异步编程~超级详细哦
  13. Android教程 第五章 常用UI界面控件
  14. cuda安装及百度云链接
  15. 构建共线矩阵的两种惊艳操作
  16. Acme CAD Converter 的线宽要怎么设置啊
  17. python——基础3
  18. python练习--360搜索关键字采集
  19. 张静君的“商脉通”和企业博客
  20. 困惑与破题:人人喊打的屏幕时间究竟对孩子做了什么?

热门文章

  1. Hyper-V里安装Linux虚机
  2. 设置角速度及生成四元数及利用刚体
  3. python逐行比较两个csv_python内两个CSV文件数据比较。。。求大神解答!!
  4. ubuntu安装python库_ubuntu下的python请求库的安装
  5. 如何利用自己的知识设计一块属于自己的单片机开发板
  6. java mybatis sql server未返回响应。连接已关闭
  7. 【渝粤教育】21秋期末考试物权法10774k1
  8. 阿里云轻量级服务器上JDK及tomcat部署配置
  9. 微信公众号测试账号获取授权须关注
  10. 在Eclipse或工作空间中 ,复制或修改项目后,把项目部署后发现还是原来的项目名称...