最新Redis面试题及答案

最新Redis面试题及答案
最新Redis面试题及答案

Redis 是一个基于内存的高性能key-value数据库。(有空再补充,有理解错误或不足欢迎指正)

Reids的特点

Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。

因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过10万次读写操作,是已知性能最快的Key-Value DB。

Redis的出色之处不仅仅是性能,Redis最大的魅力是支持保存多种数据结构,此外单个value的最大限制是1GB,不像memcached只能保存1MB的数据,因此Redis可以用来实现很多有用的功能,比方说用他的List来做FIFO双向链表,实现一个轻量级的高性能消息队列服务,用他的Set可以做高性能的tag 系统等等。

另外Redis也可以对存入的Key-Value设置expire时间,因此也可以被当作一个功能加强版的memcached来用。

Redis的主要缺点是数据库容量受到物理内存的限制,不能用作海量数据的高性能读写,因此Redis适合的场景主要局限在较小数据量的高性能操作和运算上。

Redis支持的数据类型

Redis通过Key-Value的单值不同类型来区分, 以下是支持的类型:

Strings

Lists

Sets 求交集、并集

Sorted Set

hashes

为什么redis需要把所有数据放到内存中?

Redis为了达到最快的读写速度将数据都读到内存中,并通过异步的方式将数据写入磁盘。所以redis具有快速和数据持久化的特征。

如果不将数据放在内存中,磁盘I/O速度为严重影响redis的性能。在内存越来越便宜的今天,redis将会越来越受欢迎。

如果设置了最大使用的内存,则数据已有记录数达到内存限值后不能继续插入新值。

Redis是单进程单线程的

redis利用队列技术将并发访问变为串行访问,消除了传统数据库串行控制的开销

虚拟内存

当你的key很小而value很大时,使用VM的效果会比较好.因为这样节约的内存比较大.

当你的key不小时,可以考虑使用一些非常方法将很大的key变成很大的value,比如你可以考虑将key,value组合成一个新的value.

vm-max-threads这个参数,可以设置访问swap文件的线程数,设置最好不要超过机器的核数,如果设置为0,那么所有对swap文件的操作都是串行的.

可能会造成比较长时间的延迟,但是对数据完整性有很好的保证.

自己测试的时候发现用虚拟内存性能也不错。如果数据量很大,可以考虑分布式或者其他数据库

分布式

redis支持主从的模式。原则:Master会将数据同步到slave,而slave不会将数据同步到master。Slave启动时会连接master来同步数据。

这是一个典型的分布式读写分离模型。我们可以利用master来插入数据,slave 提供检索服务。这样可以有效减少单个机器的并发访问数量。

读写分离模型

通过增加Slave DB的数量,读的性能可以线性增长。为了避免Master DB的单点故障,集群一般都会采用两台Master DB做双机热备,所以整个集群的读和写的可用性都非常高。

读写分离架构的缺陷在于,不管是Master还是Slave,每个节点都必须保存完整的数据,如果在数据量很大的情况下,集群的扩展能力还是受限于单个节点的存储能力,而且对于Write-intensive类型的应用,读写分离架构并不适合。

数据分片模型

为了解决读写分离模型的缺陷,可以将数据分片模型应用进来。

可以将每个节点看成都是独立的master,然后通过业务实现数据分片。

结合上面两种模型,可以将每个master设计成由一个master和多个slave组成的模型。

Redis的回收策略

volatile-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(驱逐):禁止驱逐数据

1. 使用Redis有哪些好处?

速度快,因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1)

支持丰富数据类型,支持string,list,set,sorted set,hash

支持事务,操作都是原子性,所谓的原子性就是对数据的更改要么全部执行,要么全部不执行

丰富的特性:可用于缓存,消息,按key设置过期时间,过期后将会自动删除

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

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

redis的速度比memcached快很多

redis可以持久化其数据

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

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

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

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

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

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

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

4. MySQL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据

相关知识:redis 内存数据集大小上升到一定大小的时候,就会施行数据淘汰策略。

redis 提供6种数据淘汰策略,上文已经列出。

5. Memcache与Redis的区别都有哪些?

1)、存储方式

Memecache把数据全部存在内存之中,断电后会挂掉,数据不能超过内存大小。

Redis有部份存在硬盘上,这样能保证数据的持久性。

2)、数据支持类型

Memcache对数据类型支持相对简单。

Redis有复杂的数据类型。

3)、使用底层模型不同

它们之间底层实现方式以及与客户端之间通信的应用协议不一样。

Redis直接自己构建了VM 机制,因为一般的系统调用系统函数的话,会浪费一定的时间去移动和请求。

4)、value大小

redis最大可以达到1GB,而memcache只有1MB

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

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

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

Master最好不要做任何持久化工作,包括内存快照和AOF日志文件,特别是不要启用内存快照做持久化,如果数据比较关键,某个Slave开启AOF备份数据,策略为每秒同步一次。

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

4). Redis主从复制的性能问题,为了主从复制的速度和连接的稳定性,Slave和Master最好在同一个局域网内

7,redis 最适合的场景

Redis最适合所有数据in-momory的场景,虽然Redis也提供持久化功能,但实际更多的是一个disk-backed的功能,跟传统意义上的持久化有比较大的差别。

那么可能大家就会有疑问,似乎Redis更像一个加强版的Memcached,那么何时使用Memcached,何时使用Redis呢?

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

Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash等数据结构的存储。

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

Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。

(1)、会话缓存(Session Cache)

最常用的一种使用Redis的情景是会话缓存(session cache)。用Redis缓存会话比其他存储(如Memcached)的优势在于:Redis提供持久化。当维护一个不是严格要求一致性的缓存时,如果用户的购物车信息全部丢失,大部分人都会不高兴的,现在,他们还会这样吗?

幸运的是,随着Redis 这些年的改进,很容易找到怎么恰当的使用Redis来缓存会话的文档。甚至广为人知的商业平台Magento也提供Redis的插件。

(2)、全页缓存(FPC)

除基本的会话token之外,Redis还提供很简便的FPC平台。回到一致性问题,即使重启了Redis实例,因为有磁盘的持久化,用户也不会看到页面加载速度的下降,这是一个极大改进,类似PHP本地FPC。

再次以Magento为例,Magento提供一个插件来使用Redis作为全页缓存后端。

此外,对WordPress的用户来说,Pantheon有一个非常好的插件wp-redis,这个插件能帮助你以最快速度加载你曾浏览过的页面。

(3)、队列

Reids在内存存储引擎领域的一大优点是提供list 和set 操作,这使得Redis 能作为一个很好的消息队列平台来使用。Redis作为队列使用的操作,就类似于本地程序语言(如Python)对list 的push/pop 操作。

如果你快速的在Google中搜索“Redis queues”,你马上就能找到大量的开源项目,这些项目的目的就是利用Redis创建非常好的后端工具,以满足各种队列需求。例如,Celery有一个后台就是使用Redis作为broker,你可以从这里去查看。

(4),排行榜/计数器

Redis在内存中对数字进行递增或递减的操作实现的非常好。集合(Set)和有序集合(Sorted Set)也使得我们在执行这些操作的时候变的非常简单,Redis 只是正好提供了这两种数据结构。所以,我们要从排序集合中获取到排名最靠前的10个用户–我们称之为“user_scores”,我们只需要像下面一样执行即可:

当然,这是假定你是根据你用户的分数做递增的排序。如果你想返回用户及用户的分数,你需要这样执行:

ZRANGE user_scores 0 10 WITHSCORES

Agora Games就是一个很好的例子,用Ruby实现的,它的排行榜就是使用Redis 来存储数据的,你可以在这里看到。

(5)、发布/订阅

最后(但肯定不是最不重要的)是Redis的发布/订阅功能。发布/订阅的使用场景确实非常多。我已看见人们在社交网络连接中使用,还可作为基于发布/订阅的脚本触发器,甚至用Redis的发布/订阅功能来建立聊天系统!(不,这是真的,你可以去核实)。

Redis提供的所有特性中,我感觉这个是喜欢的人最少的一个,虽然它为用户提供如果此多功能。

那如何学习才能快速入门并精通呢?

当真正开始学习的时候难免不知道从哪入手,导致效率低下影响继续学习的信心。

但最重要的是不知道哪些技术需要重点掌握,学习时频繁踩坑,最终浪费大量时间,所以有一套实用的视频课程用来跟着学习是非常有必要的。

为了让学习变得轻松、高效,今天给大家免费分享一套阿里架构师传授的一套教学资源。帮助大家在成为架构师的道路上披荆斩棘。

这套视频课程详细讲解了(Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构)等这些成为架构师必备的内容!

而且还把框架需要用到的各种程序进行了打包,根据基础视频可以让你轻松搭建分布式框架环境,像在企业生产环境一样进行学习和实践。

公安面试题

面试题本一 1、作为一名人民警察,你认为在与熟人交往中应注意些什么? 【测评要素】人际交往 【参考答案】我觉得作为一名人民警察,在保持与熟人的正常交往同时,更应当时刻提醒自己身分的特殊性,严格依据国家法律法规的要求约束自己的行为,保持交往有度,公私分明。人在社会上生活,都会有自己的亲戚朋友,有自己的交际圈子,所以在工作中,熟人找上门办事,这是难免的,也是很正常的,对于一般性的工作,不必躲避,不必上纲上线,让人觉得没有人情味。 但是,在与熟人交往中要注意把握"度"的问题,要做到"热情有度,公私分明",要小事讲感情,大事讲原则。"热情"就是指在力所能及的范围内,能给熟人方便的就应尽量给予方便。哪怕自己帮他跑腿、贴路费、贴成本都可以。"有度"是指感情再好,也不能逾越法律法规和有关政策的界限;"公私分明"即要严守工作秘密,不能拿工作中的原则性问题去徇私情。碰到原则性问题帮不了熟人时,一定要做好解释工作,我相信,真正知根知底的熟人是可以理解的。在与熟人交往中,还要谦虚谨慎,忠诚守信,言行一致。老子曰:"轻诺者,必寡信"作为一名人民警察,平时不能胡乱许诺"凡事包在我身上",结果到关键时刻往往无法兑现,让人觉得你不真诚、不可信赖,这不但有损自身的形象,也有损于人民警察队伍的整体形象。 因此,我会不断加强自身修养,处理好人际关系,做一名合格的人民警察。

2、假如你昨晚上在网上看到你的一位同事穿制服打人的照片。有网友说是暴力执法,有很多人跟帖,引发争议。对此你怎么办? 【测评要素】情境应变 【注意要素】本题是一道情境应变题目,也是一道人际关系题目,同时也是一道考查公职人员职业道德或者责任心的题目。总之,处理事情方法要妥当,思维要清晰,要讲究原则;做人要正直,遵守职业道德,要有荣誉感和责任心。 【参考答案】互联网的普及,为人们享有知情权、参与权、表达权和监督权提供了前所未有的便利条件和直接渠道,但是互联网也存在传播不良信息的一面,网络上时常夹杂着谣言和不满情绪的宣泄。因此,对于我在网上看到的我的一位同事穿制服打人的照片的信息以及网友的评价和跟帖,我会本着严肃、认真、理性的原则,妥善地加以处理,绝不会贸然行事。 首先,我会十分关注网友的评价、跟帖以及由此所引发的争议情况,如果事情越闹越大,情况严重,我则会向单位领导汇报,防止事态的扩大。 其次,及时联系该同事,将网络上发生的事情及时向他转告,提醒他不要掉以轻心,无论事情的真假,都应该保持冷静,妥善处理。 最后,继续关注这件事情的进展,因为它关系到我们单位的形象和声誉。如果经过调查核实,网上传播的信息纯属恶搞或者造谣生事,乃虚惊一场,我会为之欢欣鼓舞。如果事情属实,我也不会因之黯然神伤,更不会苛责同事,相信

最全大数据程序员面试题库

最全大数据程序员面试题库 大数据开发面试题库,千锋讲师总结了很多,经过总结学生在面试中遇到的问题,还有讲师多年的经验精心编制。就是要宠千锋学生到底,不仅教授你专业的大数据技术,更要让你从容的面对面试官,在众多的竞争者中脱颖而出。 好了,废话不多说,直接上题库。。。。。。 1.scala 语言有什么特点,什么是函数式编程?有什么优点 2.scala 伴生对象有什么作用 3.scala 并发编程是怎么弄得,你对actor 模型怎么理解有何优点 4.scala case class 有什么重要 5.scala akka 框架有没有接触过,有什么重要 6.scala 为什么设计var 和val 7.SDD,DAG,Stage怎么理解? 8.宽依赖窄依赖怎么理解? 9.Stage是基于什么原理分割task的? 10.血统的概念

11.任务的概念 12.容错方法 13.粗粒度和细粒度 14.Spark优越性 15.Spark为什么快 16.Transformation和action是什么?区别?举几个常用方法 17.SDD怎么理解 18.spark 作业提交流程是怎么样的,client和cluster 有什么区别,各有什么作用 19.spark on yarn 作业执行流程,yarn-client 和yarn cluster 有什么区别 20.spark streamning 工作流程是怎么样的,和storm 比有什么区别 21.spark sql 你使用过没有,在哪个项目里面使用的 22.spark 机器学习和spark 图计算接触过没,,能举例说明你用它做过什么吗? 23.spark sdd 是怎么容错的,基本原理是什么? 大数据时代,中国IT环境也将面临重新洗牌,不仅仅是企业,更是程序员们转型可遇而不可求的机遇。随着互联网时代的迅猛发展,大数据全面融入了现代社会的生产、生活中,并将大大改变全球的经济。大数据,它其实不仅仅是一种技术,更是战略资源。 千锋不仅仅注重学生的专业技能培训,还注重学生的素质培养,开班第一天起,每节课的课前十分钟分享,锻炼学员的沟通表达能力,在工作中减少沟通成

2019最新Java面试题,常见面试题及答案汇总

ava最新常见面试题+ 答案汇总 1、面试题模块汇总 面试题包括以下十九个模块:Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql、Redis、JVM 。如下图所示: 可能对于初学者不需要后面的框架和JVM 模块的知识,读者朋友们可根据自己的情况,选择对应的模块进行阅读。 适宜阅读人群 需要面试的初/中/高级java 程序员 想要查漏补缺的人 想要不断完善和扩充自己java 技术栈的人 java 面试官 具体面试题 下面一起来看208 道面试题,具体的内容。 一、Java 基础 1.JDK 和JRE 有什么区别? 2.== 和equals 的区别是什么? 3.两个对象的hashCode()相同,则equals()也一定为true,对吗? 4.final 在java 中有什么作用? 5.java 中的Math.round(-1.5) 等于多少? 6.String 属于基础的数据类型吗? 7.java 中操作字符串都有哪些类?它们之间有什么区别? 8.String str="i"与String str=new String(“i”)一样吗? 9.如何将字符串反转? 10.String 类的常用方法都有那些? 11.抽象类必须要有抽象方法吗? 12.普通类和抽象类有哪些区别? 13.抽象类能使用final 修饰吗?

14.接口和抽象类有什么区别? 15.java 中IO 流分为几种? 16.BIO、NIO、AIO 有什么区别? 17.Files的常用方法都有哪些? 二、容器 18.java 容器都有哪些? 19.Collection 和Collections 有什么区别? 20.List、Set、Map 之间的区别是什么? 21.HashMap 和Hashtable 有什么区别? 22.如何决定使用HashMap 还是TreeMap? 23.说一下HashMap 的实现原理? 24.说一下HashSet 的实现原理? 25.ArrayList 和LinkedList 的区别是什么? 26.如何实现数组和List 之间的转换? 27.ArrayList 和Vector 的区别是什么? 28.Array 和ArrayList 有何区别? 29.在Queue 中poll()和remove()有什么区别? 30.哪些集合类是线程安全的? 31.迭代器Iterator 是什么? 32.Iterator 怎么使用?有什么特点? 33.Iterator 和ListIterator 有什么区别? 34.怎么确保一个集合不能被修改?

阿里、百度、搜狐、优土等互联网公司面试经验总结

阿里、百度、搜狐、优土等互联网公司面试经验总结 这个跳槽季大概面试了近十家公司,也拿到了几个Offer,现在面试告一段落,简单总结下面经, 我现在主要的方向是Java服务端开发,把遇到的问题和大家分享一下,也谈谈关于技术人员如何有方向的提高自己,做到有的放矢。 一、面试遇到的问题 百度最近真是炙手可热,贴吧事件刚结束,医疗竞价排名又闹得沸沸扬扬,一些论坛上连带程序员都开始招黑了,友谊的小船可是说翻就翻。 说回面试,百度面了两次,分别是百度糯米和金融事业部,百度目前只有这两个部门的招聘岗位和我比较匹配。 面试都在西二旗的百度新总部,园区还在施工,离地铁也比较远,需要打车过去。 面试官自带电脑,整个面试过程都在记录,首先详细询问了最近一份工作项目的架构和工作内容, 面试主要围绕工作中用到的组件和中间件技术来扩展,考察掌握程度。 MySQL InnoDB存储的文件结构 索引树是如何维护的? 数据库自增主键可能的问题 Redis的主键争用问题如何解决 了解Redis事务的CAS操作吗 分析线程池的实现原理和线程的调度过程 动态代理的几种方式 spring AOP与IOC的实现 为什么CGlib方式可以对接口实现代理? RMI与代理模式 Dubbo的底层实现原理和机制, 描述一个服务从发布到被消费的详细过程 算法方面考察了一个简单的数组就地去重问题,用丢弃数组尾部元素的方式实现了。百度金融的面试安排在了周六,最近应该在各种扩张,各个招聘网站随处可见招聘启事。

一面面试官很赞,态度认真,有些问题没有思路会给你提示,交流的不错,二面被告 知缺少金融支付背景, 不过作为一名工作不到两年的新人,我觉得被Pass主要原因应该是工作经验比较少,教育背景也不太亮眼。 面试中的问题: 分布式系统怎么做服务治理 接口的幂等性的概念 Maven出现版本冲突如何解决 JVM垃圾回收机制,何时触发MinorGC等操作 新生代和老生代的内存回收策略 Eden和Survivor的比例分配等 Synchronized和Lock的区别 两次面试,感觉百度的流程比较严格,面试官挺不错的,简单可信赖,虽然工作中一 般都用谷歌, 想起一个段子,哈哈。 有次面百度,我提到了一个比赛,面试官很感兴趣,想搜一下, 于是先用百度搜了一下关键字,首屏没有找到,面试官面不改色,熟练的打开了谷歌 输入关键字,发现第一个就是官方网站。 2.阿里巴巴 阿里的面试安排的很快,这次止步二面,两轮面试都是电面。听朋友说阿里五轮面试,四轮技术一轮HR,技术面试是部门的几个同事交叉面试,也有了了解。 一面总体上还是围绕项目架构、Java基础、JVM、并发编程、数据库操作、中间件技 术和Dubbo服务治理框架等展开, 可能因为是云安全部门,有一半时间在考察JVM,还提问了一些编译优化的知识, 一面结束后很快安排了二面,相对一面,二面的问题更深入,问题比较刨根问底,更 加注重对一些技术细节的理解和把握。 比如数据库操作,面试官会详细的问你数据库插入和删除一条数据的过程在底层是如 何执行的,项目里配置了读写分离,也会比较深入的就实现方法和底层逻辑展开讨论。一些值得记录的问题: JVM内存分代,

最新的警察面试真题及答案

最新的警察面试真题及答案 1.为何要报考人民警察? 【参考解析】第一,要对所报岗位的性质加以描述,找出值得你自豪或荣耀的地方;第二,你所学的专业、性格、特长与所报岗位 的关系;第三,所报岗位和加入人民警察将对我的人生有什么影响;第四,为了不辜负人民、社会、国家对我的培育之恩,我要通过报 考人民警察岗位为人民服务、为社会服务,报答国家;第五,人们 都在追求美好的东西,都有自己的职业目标,我的职业目标可以通 过人民警察来实现。 2.如果你在这次考试中没有被录用,你怎么打算? 3.现在有些人收入比人民警察高,有些人心理不平衡了,你怎么看? 5.如果进入新的岗位,你的现阶段目标和今后一个时期的目标是什么? 6.你对新工作有何长短计划? 7.你认为怎样的工作和环境适合你? 8.对,警察升职慢,在单位里熬年头?这一说法有什么看法? 【参考解析】第一,这种现象的确存在于警察队伍内部。警察的升职需要具备很多的条件,而往往这些条件是和工作年限挂钩的, 因此要正确看待;第二,我选择做警察的工作动机和出发点,是为 实现自己的职业理想也就是实现我为人民服务的理想才报考警察职 位的;第三,把警察看成一条实现自身权力欲望的途径的看法是非 常不正确的,警察队伍本身有比较严密的组织体系,这个体系的运 作就是为了更高效地为人民服务,相对来讲个人说升职快慢就显得 不是非常的重要,重要的是各司其职;第四,随着警察法的实行和 警察升职制度的完善,警察升职时间会有一个明确的规定;第五; 我相信只要立足本岗,干好工作,金子总会发光的。

【参考解析】该题的出题意图在于考察应试者的应变能力,并非真的对你不满,要沉着应对;不要中了圈套,暴露自己的弱点,回 答时可以虚一点;重点要放在弥补弱点上,这可以看出你积极进取 的品质;要诚恳地向考官讨教,可以博取他们的好感。第一,我认 为面试向来是5分靠实力,5分靠运气的。我们不能指望一次面试 就能对一个人的才能、品格有充分的了解。毕竟二十分钟时间太短,而要打分的项目很多;第二,当然最大的原因可能是我的临场发挥 不能得到各位的认可,比如我的心里的确感到紧张。吃一堑长一智,所以无论面试的结果如何,我的这段经历将为我提供一个自我审查 的机会,发现自己的不足,其中既有临场经验的不足,也有知识储 备的不足。希望以后能有机会向各位考官讨教;第三,我会好好的 总结经验教训,加强学习,弥补不足。另外,希望考官能对我进行 全面、客观的考察,我一定会努力,使自己尽量适应岗位的要求。 10.你是学理科的吧?有用人部门反映,学理科的只会做不会说,务虚有余,务实不足,常常是做事只见树木不见森林,你是否也是 这样? 11、有人认为工作环境和待遇是选择工作的主要标准,你对这个问题怎么认识? 【参考解析】第一,这话听起来有一定的道理,毕竟宽敞舒适的工作 环境和优厚的待遇能让人身心愉悦和提高物质生活水平;第二,对工作环境和待遇的范围要有一个正确的理解,工作环境不仅限于 办公条件,交通、通讯工具,还应包括单位风气,领导作风,和谐 程度等;待遇不仅限于工资、奖金、福利,还应包括荣誉奖励、激 励晋升等;第三,工作环境和待遇与工作岗位的重要程度不完全成 正比,在我们国家经济条件还不发达的情况下,有的工作岗位工作 环境很差、待遇确很低;第四,把工作环境和待遇选择工作的主要 标准,不仅要看硬环境,还要看软环境,不仅要看物质待遇,还要 看精神鼓励;第五,一个人选择工作不完全取决于工作环境和待遇,还要与自己的兴趣、爱好和所学的专业。 12、你最不喜欢的工作是什么?为什么?

面试十大问题雷区

―So, do you have any questions for me?‖ This common refrain toward the close of a job interview can make even the best of us stammer when the tables are turned. But with the national unemployment rate over 8%, sharp interview skills are more important than ever. ―那么,你有什么想问的吗?‖这个面试结束前最常见的问题能让即使原本处于上风的面试者也顿时变得结结巴巴。在失业率超过8%的当前趋势下,面试技巧的掌握比以往任何时候都具有意义。 Most employers agree that, ―No, I have no questions,‖ is the worst possible response. ―Th e most frustrating thing for a recruiter is when you don‘t have any questions at all,‖ says recruiter Abby Kohut of https://www.360docs.net/doc/c817820410.html,. 很多招聘人员都同意―不了,我没什么想问的‖这样的回答是他们认为最糟糕的回复。―对于公司的招聘人员来说,没什么比应聘者毫无疑问更让人沮丧的事情了。‖Absolutely网站的招聘者,Abby Kohut说道。 We asked professional recruiters to brief us on the top ten most common interview questions to scratch off our lists immediately. 我们向专业招聘人员要来了―10个最糟糕的面试提问‖,这些问题应该立马从我们的脑子里删除。 Questions You Should Never Ask in a Job Interview 面试时你永远不要问的那些问题: 1. Anything related to salary or benefits 1.关于薪水和福利的任何事,都不要问 ―Company benefits [and salary negotiations] don‘t come into play until an offer has been extended,‖ says Kohut. The same prin ciple applies to sick time and vacation days. It‘s best to avoid any question that sounds like yo u assume you already have the position–unless, of course, your interviewer brings it up first. ―除非已正式雇佣,否则公司的薪水、福利以及关于薪水的谈判永远都不会展现给应聘者,‖Kohut说道。同样,病假、假期等相关的问题也不能问。除非对方已经暗示你将得到这份工作,否则,不要提出任何以上提到的问题,这会让人觉得你已有胜券在握的感觉。 2. Questions that start with “why?” 2.不要提出任何以“为什么”开头的问题 Why? It‘s a matter of psychology. These kinds of questions put people on the defensive, says Kohut. She advises repositioning a question such as, ―Why did the company lay off people last year?‖ to a less confrontational, ―I read about the layoffs you had. What‘s your opinion on how the company is positioned for the future?‖ 为什么呢?因为这是个心理学问题。以―为什么‖开头的问题会让人变得具有防御意识,Kohut解释道。她建议可以换个方式问问题,比如,把―为什么贵公司去年要裁员?‖的问题巧妙转变成:―我听说去年贵公司裁员了一部分人,请问,您对于公司未来的定位有什么看法?‖ 3. “Who is your competition?” 3.“我的竞争者都有些谁?” This is a great example of a question that could either make you sound thoughtful … or totally backfire and reveal that you d id zero research about the company prior to the interview, says Jacqui Barrett-Poindexter of https://www.360docs.net/doc/c817820410.html,. Before asking any question, determine whether it‘s something you could have figured out yourself through a Google search. If it is, a) don‘t ask it and b) do that Google search before your interview! 这个问题是把双刃剑,它也许会让你显得考虑周全…也可能带来出其不意的反效果,让用人单位觉得你根本没有事先做好对公司的研究、也丝毫不重视这次面试——来自CareerTrend网站的Jacqui Barrett-Poindexter说道。在问出任何一个问题前,请先自问:这个问题我能不能自己用google找到答案?如果能,那么,请1)千万别问这个问题2)面试前先用google搜一搜! 4. “How often do reviews occur?” 4.“公司多久对员工进行一次评估?”

Redis面试专题及答案

redis和memcached什么区别?为什么高并发下有时单线程的redis比多线程的memcached效率要高? 区别: 1.mc可缓存图片和视频。rd支持除k/v更多的数据结构; 2.rd可以使用虚拟内存,rd可持久化和aof灾难恢复,rd通过主从支持数据备份; 3.rd可以做消息队列。 原因:mc多线程模型引入了缓存一致性和锁,加锁带来了性能损耗。 redis主从复制如何实现的?redis的集群模式如何实现?redis的key是如何寻址的? 主从复制实现:主节点将自己内存中的数据做一份快照,将快照发给从节点,从节点将数据恢复到内存中。之后再每次增加新数据的时候,主节点以类似于mysql的二进制日志方式将语句发送给从节点,从节点拿到主节点发送过来的语句进行重放。 分片方式: -客户端分片 -基于代理的分片 ●Twemproxy ●codis -路由查询分片 ●Redis-cluster(本身提供了自动将数据分散到Redis Cluster不同节点的能力,整个数据集合的某个数据子集存储在哪个节点对于用户来说是透明的) redis-cluster分片原理:Cluster中有一个16384长度的槽(虚拟槽),编号分别为0-16383。每个Master节点都会负责一部分的槽,当有某个key被映射到某个Master负责的槽,那么这个Master负责为这个key提供服务,至于哪个Master节点负责哪个槽,可以由用户指定,也可以在初始化的时候自动生成,只有Master才拥有槽的所有权。Master节点维护着一个16384/8字节的位序列,Master节点用bit来标识对于某个槽自己是否拥有。比如对于编号为1的槽,Master只要判断序列的第二位(索引从0开始)是不是为1即可。这种结构很容易添加或者删除节点。比如如果我想新添加个节点D, 我需要从节点A、B、C中得部分槽到D上。 使用redis如何设计分布式锁?说一下实现思路?使用zk可以吗?如何实现?这两种有什么区别? redis: 1.线程A setnx(上锁的对象,超时时的时间戳t1),如果返回true,获得锁。 2.线程B 用get获取t1,与当前时间戳比较,判断是是否超时,没超时false,若超时执行第3步; 3.计算新的超时时间t2,使用getset命令返回t3(该值可能其他线程已经修改过),如果 t1==t3,获得锁,如果t1!=t3说明锁被其他线程获取了。 4.获取锁后,处理完业务逻辑,再去判断锁是否超时,如果没超时删除锁,如果已超时,不用处理(防止删除其他线程的锁)。 zk: 1.客户端对某个方法加锁时,在zk上的与该方法对应的指定节点的目录下,生成一个唯一的瞬时有序节点node1; 2.客户端获取该路径下所有已经创建的子节点,如果发现自己创建的node1的序号是最小的,就认为这个客户端获得了锁。 3.如果发现node1不是最小的,则监听比自己创建节点序号小的最大的节点,进入等待。

公安面试题及参考答案

公安面试题及参考答案 一、你认为做为一名人民警察应该具备什么素质?你谈谈你的优点和不足. 答;我认为做为一名合格的人民警察,应该具备以下几点素质; 第一,政治素质."对党,国家,人民和法律的忠诚是党和人民对人民警察所一切的最基本的政治素质. 第二,思想素质.公安工作有他特殊性.工作环境的艰苦和恶劣,工作对象的复杂性和腐蚀性就必然要求我们广大的公安民警在思想上做好吃苦耐劳,防腐拒变的准备. 第三,文化素质.一定程度的文化素质是我们驾驭工作的基本功,我们不光要有"为人民服务"的思想.还要有"为人民服务"的能力. 第四,业务素质.对日常工作的熟悉程度和较高的工作能力是提高我们公安队伍整体战斗力的前提. 第五,身体素质.身体是革命的本钱.尤其是干公安这一行,没有强健的体魄和充沛的精力是难以完成复杂的公安工作和任务的. 对于我这样一个即将从警校毕业的大学生来说,业务能力的缺乏是我目前最大的不足,也是我走上工作岗位后面临的第一个挑战.我会利用空余时间多向老同志学习取经.有什么不知道的地方多虚心的请教.主动承担一些工作,多吃点苦,我想年轻人吃的苦越多,进步也就越快,我做好了这个准备. 当然谈到优点,我是学这个专业,理论知识较为丰富,平时也喜欢钻研这些案件方面的事情,动手能力强.最后,我想强调一点的是,我特别热爱这个行业,我相信自己可以做好.

二、你怎么理解"稳定压倒一切"你认为公安机关应该在这里起什么作用? 答;"稳定压倒一切"的提出是有他的时代背景的.当今时间的主题是"和平与发展",世界各国从饱经战乱的折磨和饥荒中走出来,迫切可望一个稳定的环境来发展经济,改善生活.对于我们这样一个从一穷二白中走出来的国家来说,太希望稳定的环境,现在的这个和平稳定的环境来之不易.只有社会稳定了,老百姓才可以安居乐业,国家才利用国泰民安. 做为维护国家安全和社会稳定的人民警察来说,我们要认清形式.要紧绑稳定这根玄,提高自身的政治敏锐性.严厉打击企图破坏和颠覆我国政权和社会稳定的极少数西方敌对势力和恐怖分子的反华活动.做好本职工作.维护好国家安全和社会稳定.周恩来同志说过"国家安危,公安系于一半". 三,你做为派出所警察,遭到群众投诉时,怎么办? 答;做为一名派出所民警,平时的工作会接触到形形色色的人,碰到这样的事情也是很正常的. 首先,我要摆正自己的心态.切不可认为是老百姓故意和自己过不去,对老百姓发脾气,这时我还要始终保持面带笑容,热情服务.再大的委屈也不可以带到行动上.要知道,我的一言一行代表着我们公安机关的形象.要克制自己的情绪. 其次,我要耐心的同这位老百姓沟通,如果是因为对我们工作的不理解,我可以跟他做好国家相干政策和法规的解释工作.如果是因为自己的工作方式不对,自己的态度不好.我要主动向他道歉,并表示我会在今后的工作中改正,并愿意接受他们的监督.

腾讯首席工程师测试面试题库

腾讯首席工程师IT大数据技术测试题Spark学习------CentOS环境spark安装[root@spark-master ~]# source /etc/profile 二、hadoop分布式安装与配置 1.安装与配置 把下载的安装包拷贝到服务器上,并解压到安装目录,通常应该对解压出来的文件夹重命名的,便于后面配置,我这里就偷懒直接用解压后的文件名。 然后切换到conf目录下看到有一些模板文件,我们把其中带 spark-env.sh.template 、spark-defaults.conf.template和slaves.template的文件进行复制并重命名(主要是把后面的template后缀去掉),然后修改里面的内容。 #解压安装包到安装目录 [root@spark-master ~]# tar -xvf /opt/spark/spark-2.3.2-bin-hadoop2.7.tgz -C /opt/spark/ [root@spark-master ~]# cd /opt/spark/spark-2.3.2-bin-hadoop2.7/ [root@spark-master spark-2.3.2-bin-hadoop2.7]# cd conf #拷贝slaves和spark-env.sh文件 [root@spark-master conf]# cp slaves.template slaves [root@spark-master conf]# cp spark-env.sh.template spark-env.sh [root@spark-master conf]# vim slaves #修改slaves配置文件如下 spark-slave1 spark-slave2 [root@spark-master conf]# vim spark-env.sh #修改spark-env.sh配置文件如下 export JAVA_HOME=/usr/java/jdk1.8.0_152 export SCALA_HOME=/opt/scala/scala-2.12.7

运维面试题 含答案

运维工程师面试题 姓名: 答题时间: 1.新安装MYSQL后怎样提升MYSQL的安全级别? A.修改mysql默认端口 下可以通过iptables来限制访问mysql端口的IP地址 C.对所有用户设置较复杂密码并严格指定对应账号的访问IP(可在mysql库中user表中指定用户的访问可访问IP地址) 特权账号的处理(建议给root账号设置强密码,并指定只允许本地登录) E.开启二进制查询日志和慢查询日志 安装目录及数据存储目录权限控制:给mysql安装目录读取权限,给mysql日志和数据所在目录读取和写入权限 G.删除无用mysql账号和删除无用的数据库(安装好的mysql默认会有个test库,可将其删除) 2.MYSQL的主从原理,怎么配置文件? 整体上来说,复制有3个步骤: 将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log events); 将master的binary log events拷贝到它的中继日志(relay log); 重做中继日志中的事件,将改变反映它自己的数据。 3.mysql主从复制的优点 <1> 如果主服务器出现问题,可以快速切换到从服务器提供的服务; <2> 可以在从服务器上执行查询操作,降低主服务器的访问压力;

<3> 可以在从服务器上执行备份,以避免备份期间影响主服务器的服务。 4.Mysql复制的基本原理过程 (1)Slave上面的IO线程连接上Master,并请求从指定日志文件的指定位置(或者从最开始的日志)之后的日志内容; (2)Master接收到来自Slave的IO线程的请求后,通过负责复制的IO线程根据请求信息读取指定日志指定位置之后的日志信息,返回给Slave端的IO线程。返回信息中除了日志所包含的信息之外,还包括本次返回的信息在Master端binary log文件的名称以及在Binary log中的位置; (3)Slave的IO线程收到信息后,将接收到的日志内容依次写入到Slave端的RelayLog 文件()的最末端,并将读取到的Master端的bin-log的文件名和位置记录到master-info文件中,以便在下一次读取的时候能够清楚的告诉master“我需要从某个bin-log的哪个位置开始往后的日志内容,请发给我” (4)Slave的SQL线程检测到Relay Log中新增加了内容后,会马上解析该Log文件中的内容成为在Master端真实执行时候的那些可执行的查询或操作语句,并在自身执行那些查询或操作语句,这样,实际上就是在master端和Slave端执行了同样的查询或操作语句,所以两端的数据是完全一样的。 5.为MYSQL添加一个用户? mysql> grant select,insert,update,delete on book.* to test2@localhost identified by “abc”;? ? #增加test2用户,密码为abc。并只能在localhost这台主机上登录,并且只能访问book这个库中的表,具有查询,插入,更新,删除权限; 语法:mysql> GRANT <权限> ON <库>.<表> TO ‘用户’@’主机名’ identified by “密码”; 6.写一个脚本将数据库备份并打包至远程服务器/backup目录下。 mount /mnt cd /mnt /usr/local/mysql/bin/mysqldump -hlocalhost -uroot test > tar czf rm -f

Redis面试题及复习资料

Redis 是一个基于内存的高性能key-value数据库。(有空再补充,有理解错误或不足欢迎指正) Reids的特点 Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。 因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过10万次读写操作,是已知性能最快的Key-Value DB。 Redis的出色之处不仅仅是性能,Redis最大的魅力是支持保存多种数据结构,此外单个value的最大限制是1GB,不像memcached只能保存1MB的数据,因此Redis可以用来实现很多有用的功能,比方说用他的List来做FIFO双向链表,实现一个轻量级的高性能消息队列服务,用他的Set可以做高性能的tag 系统等等。 另外Redis也可以对存入的Key-Value设置expire时间,因此也可以被当作一个功能加强版的memcached来用。 Redis的主要缺点是数据库容量受到物理内存的限制,不能用作海量数据的高性能读写,因此Redis适合的场景主要局限在较小数据量的高性能操作和运算上。 Redis支持的数据类型 Redis通过Key-Value的单值不同类型来区分, 以下是支持的类型: Strings Lists Sets 求交集、并集 Sorted Set hashes

为什么redis需要把所有数据放到内存中? Redis为了达到最快的读写速度将数据都读到内存中,并通过异步的方式将数据写入磁盘。所以redis具有快速和数据持久化的特征。 如果不将数据放在内存中,磁盘I/O速度为严重影响redis的性能。在内存越来越便宜的今天,redis将会越来越受欢迎。 如果设置了最大使用的内存,则数据已有记录数达到内存限值后不能继续插入新值。 Redis是单进程单线程的 redis利用队列技术将并发访问变为串行访问,消除了传统数据库串行控制的开销 虚拟内存 当你的key很小而value很大时,使用VM的效果会比较好.因为这样节约的内存比较大. 当你的key不小时,可以考虑使用一些非常方法将很大的key变成很大的value,比如你可以考虑将key,value组合成一个新的value. vm-max-threads这个参数,可以设置访问swap文件的线程数,设置最好不要超过机器的核数,如果设置为0,那么所有对swap文件的操作都是串行的. 可能会造成比较长时间的延迟,但是对数据完整性有很好的保证. 自己测试的时候发现用虚拟内存性能也不错。如果数据量很大,可以考虑分布式或者其他数据库 分布式 redis支持主从的模式。原则:Master会将数据同步到slave,而slave不会将数据同步到master。Slave启动时会连接master来同步数据。 这是一个典型的分布式读写分离模型。我们可以利用master来插入数据,slave 提供检索服务。这样可以有效减少单个机器的并发访问数量。

辅警面试题及答案

辅警面试题及答案 【篇一:招警(特警、巡警、辅警、刑警、交警)面试资 料】 class=txt>一.你为什么要报考人民警察? 答:我报考人民警察出于以下想法: 1、人民警察是一个神圣的职业,我的一个哥哥和一个嫂子都是人民 警察,从小我就在他们的耳濡目染之下长大,对公安这份工作有着 自己很深的情结,这是我从内心深处就想报考人民警察 2、公务员的公开、公正、公平、竞争、择优原则吸引了我,让我能 有机会真正成为一名人民警察,这也是选择人民警察这个职位的重 要原因。 3、兴趣是最好的老师,我报考的职位和我专业完全符合,而我的专 业知识学得不错,这也是我报考的原因 4、人民警察是一个崇高的职业,虽然现在社会上有很多人对人民警 察存在偏见,认为这是一个受苦受累,费力不讨好的行业,但是我 却不那么认为,任何事情的成功都是平凡一点一滴的积累起来的, 我愿作为一滴水注入到大海中为崇高的公安事业奉献自己的力量。 最后我想用人民警察宣誓的誓言来表明我的决心:我志愿成为一名 中华人民共和国警察,我保证终于中国共产党忠于祖国忠于人民终 于法律,服从命令听从指挥,严守纪律保守秘密,秉公执法清正廉洁,恪尽职守不怕牺牲,全心全意为人民服务,我愿献身于崇高的 人民公安事业,并实现自己的誓言而努力奋斗。 二、你认为目前出生年龄高性别比差是什么原因造成的,有什么好 的办法? 答:目前我国出现这种高性别比差是由于多方面造成的,原因如下: 1、受我国数千年来文化的影响,从地图上我们可以看到出生性别比 较高的省份和地区都集中在长江黄河汉文化发源地。 2、重男轻女的思想在中华民族的脑子里根深蒂固,生男孩继承香火,生女孩嫁出去女儿泼出去的水观念左右了高性别比差 3、社会保障制度不健全,尤其在农村,很多人把生男孩作为一个投资,而自己以后老年养老做一个长期投资 4、国家法律制度的不健全,致使女性地位在社会上还普遍处在一个较低水平层次上,更加剧了 社会重男轻女的风气的形成

21个必知数据科学面试题和答案

21个必知数据科学题和答案 2016-03-10分类:其他 最近KDnuggets上发的“20个问题来分辨真假数据科学家”这篇文章非常热门,获得了一月的阅读量排行首位。 但是这些问题并没有提供答案,所以KDnuggets的小编们聚在一起写出了这些问题的答案。我还加了一个特别提问——第21问,是20个问题里没有的。 下面是答案。 Q1.解释什么是正则化,以及它为什么有用。 回答者:Matthew Mayo 正则化是添加一个调优参数的过程模型来引导平滑以防止过拟合。(参加KDnuggets文章《过拟合》) 这通常是通过添加一个常数到现有的权向量。这个常数通常要么是L1(Lasso)要么是L2(ridge),但实际上可以是任何标准。该模型的测算结果的下一步应该是将正则化训练集计算的损失函数的均值最小化。 Xavier Amatriain在这里向那些感兴趣的人清楚的展示了L1和L2正则化之间的比较。 图1.Lp球:p的值减少,相应的L-p空间的大小也会减少。 Q2.你最崇拜哪些数据科学家和创业公司? 回答者:Gregory Piatetsky 这个问题没有标准答案,下面是我个人最崇拜的12名数据科学家,排名不分先后。 Geoff Hinton, Yann LeCun, 和 Yoshua Bengio-因他们对神经网络的坚持不懈的研究,和开启了当前深度学习的革命。 Demis Hassabis,因他在DeepMind的杰出表现——在Atari游戏中实现了人或超人的表现和最近Go的表现。来自datakind的Jake Porway和芝加哥大学DSSG的Rayid Ghani因他们让数据科学对社会产生贡献。 DJ Patil,美国第一首席数据科学家,利用数据科学使美国政府工作效率更高。 Kirk D. Borne,因其在大众传媒中的影响力和领导力。

公安面试题目

公安面试题目 1 、你认为做为一名人民警察应该具备什么素质 ?你谈谈你的优点和不足? 答;我认为做为一名合格的人民警察,应该具备以下几点素质:①政治素质."对党, 国家,人民和法律的忠诚是党和人民对人民警察所一切的最基本的政治素质。②思想素质.公安工作有他特殊性 .工作环境的艰苦和恶劣 ,工作对象的复杂性和腐蚀性就必然要求我们广大的公安民警在思想上做好吃苦耐劳,防腐拒变的准备。③文化素质?一定程度的文化素质是我们驾驭工作的基本功 ,我们不光要有 "为人民服务 "的思想.还要有"为人民服务 "的能力。④业务素质 .对日常工作的熟悉程度和较高的工作能力是提高我们公安队伍整体战斗力的前提。⑤身体素质 .身体是革命的本钱 .尤其是干公安这一行,没有强健的体魄和充沛的精力是难以完成复杂的公安工作和任务的。 对于我这样一个即将从警校毕业的大学生来说 ,业务能力的缺乏是我目前最大的不足,也是我走上工作岗位后面临的第一个挑战。我会利用空余时间多向老同志学习取经.有什么不知道的地方多虚心的请教 .主动承担一些工作 ,多吃点苦,我想年轻人吃的苦越多,进步也就越快 ,我做好了这个准备。 当然谈到优点 ,我是学这个专业 ,理论知识较为丰富 ,平时也喜欢钻研这些案件 方面的事情 ,动手能力强.最后,我想强调一点的是 ,我特别热爱这个行业 ,我相信自己可以做好。 2、你怎么理解 "稳定压倒一切 "你认为公安机关应该在这里起什么作用 ? 答: "稳定压倒一切 "的提出是有他的时代背景的 .当今时间的主题是 "和平与发展", 世界各国从饱经战乱的折磨和饥荒中走出来 ,迫切可望一个稳定的环境来发展经济 , 改善生活 .对于我们这样一个从一穷二白中走出来的国家来说 ,太希望稳定的环境 ,现 在的这个和平稳定的环境来之不易 .只有社会稳定了 ,老百姓才可以安居乐业 ,国家才 利用国泰民安。 做为维护国家安全和社会稳定的人民警察来说 ,我们要认清形式 .要紧绑稳定这根玄 ,提高自身的政治敏锐性 .严厉打击企图破坏和颠覆我国政权和社会稳定的极少数西方敌对势力和恐怖分子的反华活动 .做好本职工作 .维护好国家安全和社会稳定.周恩来同志说过 "国家安危,公安系于一半 "。 3、你做为派出所警察 ,遭到群众投诉时,怎么办 ?

Java架构面试【分布式数据库面试专题系列:Memcached+Redis+MongoDB】Redis面试专题(二)

1、什么是Redis?简述它的优缺点? Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。 因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过10万次读写操作,是已知性能最快的Ke y-Value DB。 Redis的出色之处不仅仅是性能,Redis最大的魅力是支持保存多种数据结构,此外单个value的最大限制是1GB,不像memcached只能保存1MB的数据,因此Redis可以用来实现很多有用的功能。 比方说用他的List来做FIFO双向链表,实现一个轻量级的高性能消息队列服务,用他的Set可以做高性能的tag系统等等。 另外Redis也可以对存入的Key-Value设置expire时间,因此也可以被当作一个功能加强版的memcac hed来用。Redis的主要缺点是数据库容量受到物理内存的限制,不能用作海量数据的高性能读写,因此Redis适合的场景主要局限在较小数据量的高性能操作和运算上。 2、Redis相比memcached有哪些优势? (1) memcached所有的值均是简单的字符串,redis作为其替代者,支持更为丰富的数据类型 (2) redis的速度比memcached快很多 (3) redis可以持久化其数据 3、Redis支持哪几种数据类型? String、List、Set、Sorted Set、hashes 4、Redis主要消耗什么物理资源? 内存。 5、Redis的全称是什么? Remote Dictionary Server。 6、Redis有哪几种数据淘汰策略? noeviction:返回错误当内存限制达到并且客户端尝试执行会让更多内存被使用的命令(大部分的写入指令,但DEL和几个例外) allkeys-lru: 尝试回收最少使用的键(LRU),使得新添加的数据有空间存放。 volatile-lru: 尝试回收最少使用的键(LRU),但仅限于在过期集合的键,使得新添加的数据有空间存放。

相关文档
最新文档