Java高频面试题

Posted yangyongjie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java高频面试题相关的知识,希望对你有一定的参考价值。

网络相关

1.http1.0和http1.1的区别?

2.http和https的区别?

3.TCP三次握手和四次握手的流程,为什么断开连接是四次,如果握手只有两次会出现什么?

为什么是四次:服务器收到客户端的FIN报文时,仅仅表示客户端没有数据再发送给服务端了,但是服务端可能还有数据没有完整发送给了客户端,所以不会马上关闭socket连接,等数据发送完毕后再发送FIN报文给客户端,告诉客户端同意关闭连接。

4.TCP/IP如何保证可靠性,数据包有哪些数据组成?

5.http get请求和post请求的区别?以及数据包格式?

6.长连接和短连接?

7.TIME_WAIT和CLOSE_WAIT?

8.说出你知道的几种http响应码?

 

缓存相关

1.redis持久化的几种方式,优缺点是什么,怎么实现的?

2.redis的缓存失效策略?

3.缓存穿透和缓存雪崩的解决办法?

4.redis集群,高可用,原理?

5.mysql里有20万条数据,如何保证redis中的数据都是热点数据?

6.redis的数据淘汰策略?

7.redis的并发竞争问题如何解决?了解redis事务的CAS操作吗?

 

数据库相关

1.MySql InnDB存储的文件结构?

2.索引树是如何维护的?

3.数据库自增主键可能的问题?

4.MySql的几种优化?

5.MySql为什么使用B+树?

6.数据库锁表的相关处理?

7.索引失效的场景?

8.高并发下如何做到安全的修噶同一行数据,乐观锁和悲观锁是什么?InnDB的行级锁有哪两种,解释其含义?

9.数据库会死锁吗,举一个例子,mysql如何解决死锁?

 

分布式相关

1.接口的幂等性概念?

2.消息中间件如何解决消息丢失的问题?

3.对分布式事务的理解?

4.如何实现负载均衡,有哪些算法可以实现?

  https://i.cnblogs.com/EditPosts.aspx?postid=10578883

5.zookeeper的用途,选举的原理是什么?选举的时候能提供服务吗?

6.zookeeper的原理和适用场景?

7.zookeeper的watch机制?

8.redis/zk节点宕机如何处理?

9.分布式集群下如何做到唯一序列号?

10.如何做一个分布式锁?

11.用过哪些MQ,怎么用的?和其他MQ比有什么优缺点,MQ的连接是线程安全的吗?

12.MQ系统的数据如何保证不丢失?

13.列举你能想到的数据库分库分表策略;分库分表后,如何解决全表查询的问题?

 

以上是关于Java高频面试题的主要内容,如果未能解决你的问题,请参考以下文章

Java后端真实面试题大全(有详细答案)--高频/真题

提问率高达 98%!近期 BATJ 大厂 Java 岗高频面试题~

Java高频面试题汇总--Java职场范儿

大数据高频面试题:HDFS核心高频面试题

Java面试高频题精选300道,一份通往阿里的必备指南(pdf文档)

高频java 面试题