JVM核心面试题(答案+剖析)
JVM核心知识点
2.分布式(限流+缓存+通讯)
分布式限流:Zookeeper+Nginx
分布式缓存:mongoDB+memcached+Redis
分布式通讯:RabbitMQ+Kafka
以Redis为例:
- redis 和 memcached 什么区别?为什么高并发下有时单线程的 redis 比多线程的memcached 效率要高?
- redis 主从复制怎样实现的?redis 的集群模式怎样实现?redis 的 key 是怎样寻址的?
- 利用 redis 怎样设计分布式锁?说一下实现思绪?利用 zk 可以吗?怎样实现?这两种有什么区别?
- 知道 redis 的持久化吗?底层怎样实现的?有什么优点缺点?
- redis 过期策略都有哪些?LRU 算法知道吗?写一下 java 代码实现?
- 缓存穿透、缓存击穿、缓存雪崩解决方案?
- 在选择缓存时,什么时间选择 redis,什么时间选择 memcached
- 缓存与数据库不同等怎么办?
- 主从数据库不同等怎样解决?
- Redis 常见的性能问题息争决方案?
- Redis 的数据镌汰策略有哪些?
- Redis 当中有哪些数据结构?
- 假如 Redis 里面有 1 亿个 key,此中有 10w 个 key 是以某个固定的已知的前缀开头的,如果将它们全部找出来?
- 利用 Redis 做过异步队列吗,是怎样实现的?
- Redis 怎样实现延时队列?
- …
Redis核心面试题(答案+剖析)
Redis核心知识点
3.开源框架(Spring+SpringMVC+MyBatis)
以Spring为例:
- 什么是 Spring 框架?Spring 框架有哪些重要模块?
- 利用 Spring 框架能带来哪些好处?
- 什么是控制反转(IOC)?什么是依靠注入?
- 请解释下 Spring 框架中的 IoC?
- BeanFactory 和 ApplicationContext 有什么区别?
- Spring 有几种设置方式?
- 怎样用基于 XML 设置的方式设置 Spring?
- 怎样用基于 Java 设置的方式设置 Spring?
- 怎样用注解的方式设置 Spring?
- 请解释 Spring Bean 的生命周期?
- Spring Bean 的作用域之间有什么区别?
- 什么是 Spring inner beans?
- Spring 框架中的单例 Beans 是线程安全的么?
- 请举例阐明怎样在 Spring 中注入一个 Java Collection?
- 怎样向 Spring Bean 中注入一个 Java.util.Properties?
- 请解释 Spring Bean 的主动装配?
- 请解释主动装配模式的区别?
- 怎样开启基于注解的主动装配?
- …
Spring面试题(答案+剖析)
Spring核心知识点
4.微服务架构(Dubbo+SpringBoot+SpringCloud)
以SpringBoot为例:
- 什么是 Spring Boot?
- Spring Boot 有哪些优点?
- 什么是 JavaConfig?
- 怎样重新加载 Spring Boot 上的更改,而无需重新启动服务器?
- Spring Boot 中的监视器是什么?
- 怎样在 Spring Boot 中禁用 Actuator 端点安全性?
- 怎样在自定义端口上运行 Spring Boot 应用程序?
- 什么是 YAML?
- 怎样实现 Spring Boot 应用程序的安全性?
- 怎样集成 Spring Boot 和 ActiveMQ?
- 怎样利用 Spring Boot 实现分页和排序?
- 什么是 Swagger?你用 Spring Boot 实现了它吗?
- 什么是 Spring Profiles?
- 什么是 Spring Batch?
- 什么是 FreeMarker 模板?
- 怎样利用 Spring Boot 实现异常处理?
- 您利用了哪些 starter maven 依靠项?
- …
Spring面试题(答案+剖析)
Spring核心知识点
5.一线互联网企业历年面试真题(阿里+字节跳动+美团+网易+拼多多+京东+B站等)
以美团为例(部分):
- List 和 Set 的区别
- HashSet 是怎样包管不重复的?
- HashMap 是线程安全的吗?为什么不是线程安全的?(最好画图阐明多线程环境下不安全)
- HashMap 的扩容过程
- HashMap 1.7 与 1.8 的 区别,阐明 1.8 做了哪些优化,怎样优化的?
- 对象的四种引用
- Java获取反射的三种方法
- Java反射机制
- Arrays.sort 和 Collections.sort 实现原理和区别?
- LinkedHashMap 的应用
- Cloneable 接口实现原理
- wait 和 sleep 的区别?
- 讲一下数组在内存中怎样分配?
- …
一线互联网企业面试真题(答案详解版)
美团面试题分享(5轮压力面)
==============
下面的面试题我把答案整理在了文档内了,答案息争析都是面试后续进行整理和总结的,包括个人见解和思考,不完全正确,具有肯定参考价值,如果需要点击传送门 即可!!
美团一面:
- 做一下自我介绍吧,简单说一下你的项目;
- 有遇到过内存泄漏吗?你们是怎么解决的?
- java的基本范例有哪几个?String是不是java的基本范例?String为什么要是final范例的?
- 反射机制的底层实现是什么?动态呢?动态的实现原理?
- hashmap相识吗?说一下hashmap相关的一些东西?hashmap是线程安全的吗?为什么是线程安全的?
- concureenthashmap相识吗?他是怎样实现线程安全的?
- 你刚才说1.8基于cas?cas的ABA问题怎么解决?
- 说一下JVM的线程模子?这些区域都分别是干啥用的?
- 说一下java类加载器的工作机制?类加载在哪个区域进行的?
- 说一下java的线程模子?
- violate相识吗?它的原理是什么?violate是线程安全的吗?
- 包管线程安全的解决方法有哪些?说一说读写锁吧,读写锁的读
- 数据库的索引有哪几种?为什么要用B+树来做索引?组合索引和几个单个的索引有什么区别?数据库的大表查询优化相识吗?MVCC机制相识不?MVCC机制有什么问题?怎么去解决这个问题?mysql慢语句调优做过吗?说说你是怎么做的?
- redis相识吗?你说说怎么用redis实现分布式锁?
- spring中Bean的作用域,springMVC的controller是线程安全的吗?怎么去包管线程安全呢?
- 消息队列有用过吗?说说你怎么用的?
- 盘算机网络相识吗?说一说TCP三次握手和四次挥手吧
- time_wait状态产生的缘故因由是什么?,有什么危害?可以怎样避免?
- 寻找旋转排序数组中的最小值
假设按照升序排序的数组在预先未知的某个点上进行了旋转。
( 比方,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。
请找出此中最小的元素。
你可以假设数组中不存在重复元素。
示例 1:
输入: [3,4,5,1,2]
输出: 1
示例 2:
输入: [4,5,6,7,0,1,2]
输出: 0
美团二面:
- 首先照旧问项目。
- String,StringBuffer,StringBuilder的区别,为什么String是不可变的,StringBuffer和StringBuilder哪个是线程安全的,他们分别适用于什么场景。
- java类加载过程是怎么样的,说一下volatile。
- 并发包相识吗?假如几个线程之间相互等候,可以用哪个并发类来实现,他的原理是什么?
- 数据库慢查询优化相识哪些?
- 说一下spring容器的启动过程?
- 讲一下分布式锁,基于zookeeper实现和redis实如今性能上有什么差别?
- kafka怎样包管不丢消息又不会重复消耗。相识大数据相关的一些技术吗?
- 末了写了道题:跳跃游戏;
给定一个非负整数数组,你最初位于数组的第一个位置。
数组中的每个元素代表你在该位置可以跳跃的最大长度。
判定你是否能够到达末了一个位置。
示例 1:
输入: [2,3,1,1,4]
输出: true
解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达末了一个位置。
示例 2:
输入: [3,2,1,0,4]
输出: false
美团三面:
- 分布式下redis怎样包管线程安全?
- redis持久化的方式以及区别?
- zookeeper怎样实现分布式锁、其他分布式锁怎么实现?
- kafka的架构,怎样用kafka包管消息的有序性?
- 数据库的优化包含哪些?MySQL的优化,谈两个你优化的例子。
- 最有技术难度的项目,介绍下相关核心设计流程。
- 工作中,遇见了技术瓶颈无法解决,你的解决思绪?
- 未来你的职业规划是怎么样?
美团四面:
- 自我介绍
- 项目介绍
- 怎么管理项目成员?
- 当意见不同等时,怎样沟通并说服开发成员?举个例子
- 怎么包管项目的进度?
- 数据库的索引原理?
- 非聚簇索引和聚簇索引?
- 索引的利用注意事项?
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |