面试问题总结

作为一个一年半Java开发的技术小白面试的心得。
在原先公司工作接触nginx、redis等工具。由于工作上对这些工具只做到会用的程度没了解深入。在面试中出现很多笑话(一问三不知的情况都出来)。今天做个反省,总结。

一、Nginx问题
问nginx负载均衡原理?
答:负载均衡作为nginx重要的一个功能,主要需要通过反向代理,接收请求通过不同配置方式,分发到不同的服务器做处理。主要有三种策略:轮询、权重、ip_hash

问nginx反向代理主要配置?
答:主要是nginx.conf文件里面的server对象里面的localtion配置要监听的路径、proxy_pass配置跳转的路径。

二、Redis问题
问Redis穿透?
答:

 Redis穿透指一些恶意请求故意查询不存在的key,请求量大对后台系统造成很大压力。解决方法:
1、对查询结果为空的情况也进行缓存,缓存时间设置短一点,或者该key对应的数据insert了之后清理缓存。
2、对一定不存在的key进行过滤。可以把所有的可能存在的key放到一个大的Bitmap中,查询时通过该bitmap过滤。

问Redis雪崩?
答:

Redis雪崩指服务器重启或者大量缓存集中在某一个时间段失效,这样在失效的时候,会给后端系统带来很大压力。导致系统崩溃。解决方法:
1、在缓存失效后,通过加锁或者队列来控制读数据库写缓存的线程数量。比如对某个key只允许一个线程查询数据和写缓存,其他线程等待。
2、做二级缓存,A1为原始缓存,A2为拷贝缓存,A1失效时,可以访问A2,A1缓存失效时间设置为短期,A2设置为长期
3、不同的key,设置不同的过期时间,让缓存失效的时间点尽量均匀

三、比较问题
问Mysql与postgreSql区别?
答:

MySQL更加适合业务逻辑相对简单、数据可靠性要求较低的互联网场景。PG更加适合严格的企业应用场景。

参考https://www.cnblogs.com/sbj-dawn/p/8053549.html

问JPA与myBatis区别?
答:

 MyBatis可以进行更为细致的SQL优化,可以减少查询字段。
 MyBatis容易掌握,而Hibernate门槛较高。
 Hibernate的DAO层开发比MyBatis简单,Mybatis需要维护SQL和结果映射。
 Hibernate对对象的维护和缓存要比MyBatis好,对增删改查的对象的维护要方便。
 Hibernate数据库移植性很好,MyBatis的数据库移植性不好,不同的数据库需要写不同SQL。
Image placeholder
Cube
未设置
  28人点赞

没有讨论,发表一下自己的看法吧

推荐文章
面试题总结:可能是全网最好的MySQL重要知识点

作者:Snailclimb 整理编辑:SegmentFault本文原载于SegmentFault专栏JavaGuide,如侵删。标题有点标题党的意思,但希望你在看了文章之后不会有这个想法——这篇文章是

2020年前必须掌握的数据库面试问题~

一、为什么用自增列作为主键1、如果我们定义了主键(PRIMARYKEY),那么InnoDB会选择主键作为聚集索引。如果没有显式定义主键,则InnoDB会选择第一个不包含有NULL值的唯一索引作为主键索

面试问烂的 Spring AOP 原理、SpringMVC 过程

  正文  SpringAOP,SpringMVC,这两个应该是国内面试必问题,网上有很多答案,其实背背就可以。但今天笔者带大家一起深入浅出源码,看看他的原理。以期让印象更加深刻,面试的时候游刃有余。

2020年PHP面试总结

1.redis输出redis的数据结构?说出redis底层数据结构的实现说出redis的常用场景redis实现分布式锁。2.mysqlMySQL的最左匹配原则MySQL的索引MySQL的常用存储引擎M

Spring Boot 面试,一个问题就干趴下了!

随着SpringBoot使用越来越广泛,SpringBoot已经成为Java程序员面试的知识点,很多同学对SpringBoot理解不是那么深刻,经常就会被几个连环跑给干趴下了!比如下面这一段的Spri

关于面试题:[1, 2, 3].map(parseInt)问题的剖析

一、前言最近有小伙伴在公号中咨询了胡哥这道面试题,窃以为是比较有意思的一道面试题,于此分享给各位小伙伴。先把答案给了各位,和你理解的一样吗?![1,2,3].map(parseInt)//[1,NaN

我是怎么倒在美团第三轮面试之下的

说实话,之前我从来没想过能有大厂会给我机会让我去面试,一个专科生,不是科班出身,这些硬性条件好像都没有一个符合的,但是却获得了美团的面试机会。很庆幸自己获得那次机会,也让我深刻体会到了面试大厂,到底需

都9012年了,怎么还会有人不会面试?

我是一家互联网公司的一线HR,负责公司技术人员的招聘。今天我有两个候选人又被fail了。关于这个岗位,我也很无奈。按理说,全是基础岗位的招聘,薪资也给的不算低,应该很容易招才对。但好巧不巧,我们公司是

漫画 | 互联网公司面试黑话图鉴:个个奥斯卡!

作者:阿波漫画:最新热歌慢摇面试如一座冰山水面之上的10%是台词水面之下的90%是潜台词看不懂面试的潜台词离沉船就不远了在信任与演技错综复杂的职场中读懂面试潜台词是你成就职场霸业的第一步这份面试黑话图

漫画 | 面试的我 VS 真实的我

作者:纯洁的微笑、孤独烟漫画师:栗子“面试造火箭,入职拧螺丝!”已经是各大互联网公司招聘的常态,为了应对如今越演越烈的面试形势,程序员一个个都变成了表演大师。俗话说面试如戏,全靠演技!HR篇01020

为了面试后不再回去等消息,我决定阅读源码

01、读源码的经历刚参加工作那会,没想过去读源码,更没想过去改框架的源码;总想着别人的框架应该是完美的、万能的,应该不需要改。另外即使我改了源码,怎么样让我的改动生效了?项目中引用的不还是没改的jar

AB test | 数据分析师面试必知 !

前言关于ABtest的重要性无需多言,数据、产品等从业人员几乎必知,好的数据科学家我想一定是知道理解业务比模型更为重要,而ABtest就是伴随着业务增长的利器。如果你心中的ABtest几乎都没有用到中

干货满满 | 来自灵魂的拷问-这21道Redis面试题

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

Python面试|一文让你读懂if __name__==’__main__’的含义

程序入口对于很多编程语言来说,程序都必须要有一个入口,比如C,C++,以及完全面向对象的编程语言Java,C#等。如果你接触过这些语言,对于程序入口这个概念应该很好理解,C和C++都需要有一个main

面试高频:如何访问 Redis 中的海量数据?

目录前言事故产生分析原因解决方案总结前言有时候我们需要知道线上的redis的使用情况,尤其需要知道一些前缀的key值,那我们怎么去查看呢事故产生因为我们的用户token缓存是采用了【user_toke

面试官问:请介绍一下MySQL数据库的锁机制?

为什么要加锁问题背景当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。要解决的问题多用户环境下保证数

两万字的数据库面试题,不看绝对后悔

一、基本概念1.主键、外键、超键、候选键超键:在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以为作为一个超键,多个属性组合在一起也可以作为一个超键。超键包含候选键和主键。候选键:是最小超

吊打面试官!MySQL灵魂100问,你能答出多少?

推荐阅读:面试机会不等人,资料看精不看多!史上最全Java技术资料合集!2019年中总结,400道一线大厂高频精选面试题合集(JVM+Spring+RabbitMQ+Mybatis+Redis+分布式

面试题:请解释一下什么是虚拟内存?

内存对于用户来说就是一个字节数组,我们可以根据地址来访问到某个字节或者某些字节:很久之前的内存很久很久之前,一台机器上只放置一个程序,操作系统仅仅作为一个函数库存在。对于内存来说,除去操作系统的代码和

阿里面试题:如何保证缓存与数据库的双写一致性?

作者:你是我的海啸出处:https://blog.csdn.net/chang384915878/article/details/86756463只要用缓存,就可能会涉及到缓存与数据库双存储双写,你只

死磕Synchronized底层实现,面试你还怕什么?

关于 synchronized 的底层实现,网上有很多文章了。但是很多文章要么作者根本没看代码,仅仅是根据网上其他文章总结、照搬而成,难免有些错误;要么很多点都是一笔带过,对于为什么这样实现没有一个说

面试题:如何理解 Linux 的零拷贝技术?

本文讲解Linux的零拷贝技术,云计算是一门很庞大的技术学科,融合了很多技术,Linux算是比较基础的技术,所以,学好Linux对于云计算的学习会有比较大的帮助。本文借鉴并总结了几种比较常见的Linu

PHP面试题

是总监面试的我,目前对我来说,是很有难度的。 1个进程执行是1s,10个进程同时执行是多长时间,1万个进程同时执行是多长时间?也是1s吗?我觉得这个问题,涉及到了进程间的切换么? 这两个执行,那个会

前端面试每日 3+1 —— 第263天

今天的知识点(2020.01.04)——第263天(我也要出题) [html]html5怎么判断app是否安装? [css]使用sass的方式有哪些? [js]举例说明object.freeze有

清华退学王垠 VS 阿里P10 赵海平,这场面试之战到底谁赢了?

知乎上有一个话题:如何评价阿里P10赵海平对王垠的面试?最近成了热帖,这下赵海平跟王垠这次是真的火了。由于本事件像电影的情节一环扣一环,文章比较长,直接一句话说下该事件始末:网红王垠受邀面试阿里P9岗