499 道 Java 面试题 (附答案):JVM+ 分布式 + 算法 + 锁 +MQ+ 微服务 + 数据库

  1. 你们线上应用的 JVM 参数有哪些。

  2. g1 和 cms 区别,吞吐量优先和响应优先的垃圾收集器选择。

  3. 怎么打出线程栈信息。

  4. 请解释如下 jvm 参数的含义:

  5. -server -Xms512m -Xmx512m -Xss1024K

  6. -XX:PermSize=256m -XX:MaxPermSize=512m -

  7. XX:MaxTenuringThreshold=20XX:CMSInitiatingOccupancyFraction=80 -

  8. XX:+UseCMSInitiatingOccupancyOnly。

开源框架知识

======

  1. 简单讲讲 tomcat 结构,以及其类加载器流程,线程模型等。

  2. tomcat 如何调优,涉及哪些参数 。

  3. 讲讲 Spring 加载流程。

  4. Spring AOP 的实现原理。

  5. 讲讲 Spring 事务的传播属性。

  6. Spring 如何管理事务的。

  7. Spring 怎么配置事务(具体说出一些关键的 xml 元素)。

  8. 说说你对 Spring 的理解,非单例注入的原理?它的生命周期?循环注入的原理,aop 的实现原

  9. 理,说说 aop 中的几个术语,它们是怎么相互工作的。

  10. Springmvc 中 DispatcherServlet 初始化过程。

  11. netty 的线程模型,netty 如何基于 reactor 模型上实现的。

  12. 为什么选择 netty。

  13. 什么是 TCP 粘包,拆包。解决方式是什么。

  14. netty 的 fashwheeltimer 的用法,实现原理,是否出现过调用不够准时,怎么解决。

  15. netty 的心跳处理在弱网下怎么办。

  16. netty 的通讯协议是什么样的。

  17. springmvc 用到的注解,作用是什么,原理。

  18. springboot 启动机制。

  19. 点击这里有一套答案版的 Spring 试题。

操作系统

====

  1. Linux 系统下你关注过哪些内核参数,说说你知道的。

  2. Linux 下 IO 模型有几种,各自的含义是什么。

  3. epoll 和 poll 有什么区别。

  4. 平时用到哪些 Linux 命令。

  5. 用一行命令查看文件的最后五行。

  6. 用一行命令输出正在运行的 java 进程。

  7. 介绍下你理解的操作系统中线程切换过程。

  8. 进程和线程的区别。

  9. top 命令之后有哪些内容,有什么作用。

  10. 线上 CPU 爆高,请问你如何找到问题所在。

多线程

===

  1. 多线程的几种实现方式,什么是线程安全。

  2. volatile 的原理,作用,能代替锁么。

  3. 画一个线程的生命周期状态图。

  4. sleep 和 wait 的区别。

  5. sleep 和 sleep(0)的区别。

  6. Lock 与 Synchronized 的区别 。

  7. synchronized 的原理是什么,一般用在什么地方(比如加在静态方法和非静态方法的区别,静

  8. 态方法和非静态方法同时执行的时候会有影响吗),解释以下名词:重排序,自旋锁,偏向锁,轻

  9. 量级锁,可重入锁,公平锁,非公平锁,乐观锁,悲观锁。

  10. 用过哪些原子类,他们的原理是什么。

  11. JUC 下研究过哪些并发工具,讲讲原理。

  12. 用过线程池吗,如果用过,请说明原理,并说说 newCache 和 newFixed 有什么区别,构造函

  13. 数的各个参数的含义是什么,比如 coreSize,maxsize 等。

  14. 线程池的关闭方式有几

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值