Java开发人员怎么面试?常见Redis面试题有哪些?Redis是目前各大企业都在使用的人们技术,也是企业选拔人才时考核的一个难题。有很多同学只是简单了解Redis的应用,但对于为什么要用Redis以及企业面试中有关Redis的问题却答不上来。接下来小编就给大家简单分析一下。
为什么使用Redis?
项目中使用Redis,主要考虑性能和并发两个方面。在大并发的情况下,所有的请求直接访问数据库,数据库会出现连接异常。这个时候,就需要使用Redis做一个缓冲操作,让请求先访问到Redis,而不是直接访问数据库。不过,Redis也有慢查询操作。根据交互效果的不同,响应时间没有固定标准。在理想状态下,我们的页面跳转需要在瞬间解决,对于页内操作则需要在刹那间解决。
Redis的数据类型有哪些?
数据类型:
1)String:一般做一些复杂的计数功能的缓存;
2)Hash:存储二维数据或对象;
3)List:可实现队列,栈及有序的数据存储;
4)Set:常用于黑名单,微信抽奖等功能,应用场景多变;
5)SortedSet:做排行榜应用,取TOPN操作;延时任务;做范围查找。
Redis持久化机制是什么?
Redis是一个支持持久化的内存数据库,通过持久化机制把内存中的数据同步到硬盘文件来保证数据持久化。当Redis重启后通过把硬盘文件重新加载到内存,就能达到恢复数据的目的。
实现:单独创建fork()一个子进程,将当前父进程的数据库数据复制到子进程的内存中,然后由子进程写入到临时文件中,持久化的过程结束了,再用这个临时文件替换上次的快照文件,然