互联网Java工程师面试题
内容涵盖:
Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、Redis、MySQL、Spring、SpringBoot、SpringCloud、RabbitMQ、Kafka、Linux等技术栈
目录
互联网Java工程师面试题 .................................... ........................................................................................................................................
MyBatis面试题........................ 1、什么是Mybatis? ...............................................................................
2、Mybaits的优点: ...............................................................................
3、MyBatis框架的缺点: .......................................................................
4、MyBatis框架适用场合: ...................................................................
5、MyBatis与Hibernate有哪些不同?............ 6、#{}和${}的区别是什么? .....................................................................
7、当实体类中的属性名和表中的字段名不一样,怎么办?...........
8、模糊查询like语句该怎么写? ...........................................................
9、通常一个Xml映射文件,都会写一个Dao接口与之对应,请问,这个Dao接口的工作原理是什么?Dao接口里的方法,参数不同时,方法能重载吗? ..........................................................................................
10、Mybatis是如何进行分页的?分页插件的原理是什么?.............
11、Mybatis是如何将sql执行结果封装为目标对象并返回的?都有哪些映射形式? ..........................................................................................
12、如何执行批量插入? ...........................................................................
13、如何获取自动生成的(主)键值? ........................................................
14、在mapper中如何传递多个参数? ..................................................
15、Mybatis动态sql有什么用?执行原理?有哪些动态sql?.......
16、Xml映射文件中,除了常见的select|insert|updae|delete标签之外,还有哪些标签? ..................................................................................
17、为什么说Mybatis是半自动ORM映射工具?它与全自动的区别在哪里? ......................................................................................................
18、一对一、一对多的关联查询? .....................................................
19、MyBatis实现一对一有几种方式?具体怎么操作的?...................
20、MyBatis实现一对多有几种方式,怎么操作的? ............................
21、Mybatis是否支持延迟加载?如果支持,它的实现原理是什么?
22、Mybatis的一级、二级缓存 :............................................................
23、什么是MyBatis的接口绑定?有哪些实现方式?........................
24、使用MyBatis的mapper接口调用时有哪些要求?...................
25、Mapper编写有哪几种方式? .........................................................
26、简述Mybatis的插件运行原理,以及如何编写一个插件。........
ZooKeeper面试题 ...................................................................................................
1.ZooKeeper面试题? ..........................................................................
2.ZooKeeper提供了什么? ...................................................................
3.Zookeeper文件系统 ............................................................................
4.ZAB协议? ............................................................................................
5.四种类型的数据节点 Znode..............................................................
6.ZookeeperWatcher机制--数据变更通知 ..................................
7.客户端注册Watcher实现 ..................................................................
8.服务端处理Watcher实现 ..................................................................
9.客户端回调 Watcher...........................................................................
10.ACL权限控制机制 ..............................................................................
11.Chroot特性 .........................................................................................
12.会话管理 ..............................................................................................
13.服务器角色 ..........................................................................................
14.Zookeeper下Server工作状态 .....................................................
15.数据同步 ..............................................................................................
16.zookeeper是如何保证事务的顺序一致性的? ..............................
17.分布式集群中为什么会有Master? ................................................
18.zk节点宕机如何处理? ......................................................................
19.zookeeper负载均衡和nginx负载均衡区别 .................................
20.Zookeeper有哪几种几种部署模式? .............................................
21.集群最少要几台机器,集群规则是怎样的? ....................................
22.集群支持动态添加机器吗? ..............................................................
23.Zookeeper对节点的watch监听通知是永久的吗?为什么不是永久的? ............................................................................................................
24.Zookeeper的java客户端都有哪些? ............................................
25.chubby是什么,和zookeeper比你怎么看? ..............................
26.说几个zookeeper常用的命令。 ....................................................
27.ZAB和Paxos算法的联系与区别? .................................................
28.Zookeeper的典型应用场景 ...........................................................
Dubbo面试题 ........................................................................................................
1、为什么要用Dubbo? .......................................................................
2、Dubbo的整体架构设计有哪些分层? ............................................
3、默认使用的是什么通信框架,还有别的选择吗? .............................
4、服务调用是阻塞的吗? ......................................................................
5、一般使用什么注册中心?还有别的选择吗? ...................................
6、默认使用什么序列化框架,你知道的还有哪些? ...........................
7、服务提供者能实现失效踢出是什么原理? .......................................
8、服务上线怎么不影响旧版本? ..........................................................
9、如何解决服务调用链过长的问题? ...................................................
10、说说核心的配置有哪些? .................................................................
11、Dubbo推荐用什么协议? ..............................................................
12、同一个服务多个注册的情况下可以直连某一个服务吗?.............
13、画一画服务注册与发现的流程图? .................................................
14、Dubbo集群容错有几种方案? ......................................................
15、Dubbo服务降级,失败重试怎么做? ..........................................
16、Dubbo使用过程中都遇到了些什么问题? ..................................
17、DubboMonitor实现原理? .........................................................
18、Dubbo用到哪些设计模式? ..........................................................
19、Dubbo配置文件是如何加载到Spring中的? ...........................
0、DubboSPI和JavaSPI区别? ...................................................
21、Dubbo支持分布式事务吗? ..........................................................
22、Dubbo可以对结果进行缓存吗? ..................................................
23、服务上线怎么兼容旧版本? .............................................................
24、Dubbo必须依赖的包有哪些? .......................................................
25、Dubbotelnet命令能做什么? ......................................................
26、Dubbo支持服务降级吗? ..............................................................
27、Dubbo如何优雅停机? ..................................................................
28、Dubbo和Dubbox之间的区别? ...............................................
29、Dubbo和SpringCloud的区别? .............................................
30、你还了解别的分布式框架吗? .........................................................
Elasticsearch面试题 ...............................................................................................
1、elasticsearch了解多少,说说你们公司es的集群架构,索引数据大小,分片有多少,以及一些调优手段。 ............................................
2、elasticsearch的倒排索引是什么 ......................................................
3、elasticsearch索引数据多了怎么办,如何调优,部署.................
4、elasticsearch是如何实现master选举的 .......................................
5、详细描述一下Elasticsearch索引文档的过程 .................................
6、详细描述一下Elasticsearch搜索的过程? .....................................
7、Elasticsearch在部署时,对Linux的设置有哪些优化方法..........
8、lucence内部结构是什么? ................................................................
9、Elasticsearch是如何实现Master选举的? ...................................
10、Elasticsearch中的节点(比如共20个),其中的10个选了一个master,另外10个选了另一个master,怎么办? ............................
11、客户端在和集群连接时,如何选择特定的节点执行请求的?.....
12、详细描述一下Elasticsearch索引文档的过程。 ...........................
13、详细描述一下Elasticsearch更新和删除文档的过程。...............
14、详细描述一下Elasticsearch搜索的过程。 ...................................
15、在Elasticsearch中,是怎么根据一个词找到对应的倒排索引的? ......................................................................................................................
16、Elasticsearch在部署时,对Linux的设置有哪些优化方法?....
17、对于GC方面,在使用Elasticsearch时要注意什么?...............
18、Elasticsearch对于大数据量(上亿量级)的聚合如何实现?....
19、在并发情况下,Elasticsearch如果保证读写一致?..................
20、如何监控Elasticsearch集群状态? ...............................................
21、介绍下你们电商搜索的整体技术架构。 ........................................
22、介绍一下你们的个性化搜索方案? ................................................
23、是否了解字典树? .............................................................................
24、拼写纠错是如何实现的? ...............................................................
Memcached面试题 .............................................................................................
1、Memcached是什么,有什么作用? .............................................1
2、Memcached服务分布式集群如何实现? .....................................
3、Memcached服务特点及工作原理是什么? .................................
4、简述Memcached内存管理机制原理? ........................................
5、memcached是怎么工作的? .........................................................
6、memcached最大的优势是什么? .................................................
7、memcached和MySQL的 query.................................................
8、memcached和服务器的localcache(比如PHP的APC、mmap文件等)相比,有什么优缺点? ............................................................
9、memcached的cache机制是怎样的? ........................................
10、memcached如何实现冗余机制? ..............................................
11、memcached如何处理容错的? ...................................................
12、如何将memcached中item批量导入导出? ...........................
13、如果缓存数据在导出导入之间过期了,您又怎么处理这些数据呢? ....................................................................................................................
14、memcached是如何做身份验证的? ...........................................
15、memcached的多线程是什么?如何使用它们?.......................
16、memcached能接受的key的最大长度是多少?......................
17、memcached最大能存储多大的单个item? .............................
18、memcached能够更有效地使用内存吗? ...................................
19、什么是二进制协议,我该关注吗? ...............................................
20、memcached的内存分配器是如何工作的?为什么 不适用malloc/free!?为何要使用slabs? ...................................................
21、memcached是原子的吗? ...........................................................
22、如何实现集群中的session共享存储? .......................................
23、memcached与redis的区别? ...................................................
Redis面试题 ....................................................................................................
1、什么是Redis? ....................................................................................
2、Redis的数据类型? ..........................................................................
3、使用Redis有哪些好处? .................................................................
4、Redis相比Memcached有哪些优势? ........................................
5、Memcache与Redis的区别都有哪些? ......................................
6、Redis是单进程单线程的? ..............................................................
7、一个字符串类型的值能存储最大容量是多少? .............................
8、Redis的持久化机制是什么?各自的优缺点? .............................
9、Redis常见性能问题和解决方案: .................................................
10、redis过期键的删除策略? .............................................................
11、Redis的回收策略(淘汰策略)? ..................................................
12、为什么edis需要把所有数据放到内存中? ................................
13、Redis的同步机制了解么? ...........................................................
14、Pipeline有什么好处,为什么要用pipeline?.......................
15、是否使用过Redis集群,集群的原理是什么? ..........................
16、Redis集群方案什么情况下会导致整个集群不可用?...............
17、Redis支持的Java客户端都有哪些?官方推荐用哪个?.........
18、Jedis与Redisson对比有什么优缺点? .....................................
19、Redis如何设置密码及验证密码? ...............................................
20、说说Redis哈希槽的概念? ..........................................................
21、Redis集群的主从复制模型是怎样的? ...................................
22、Redis集群会有写操作丢失吗?为什么? ...................................
23、Redis集群之间是如何复制的? ...................................................
24、Redis集群最大节点个数是多少? ..............................................
25、Redis集群如何选择数据库? .......................................................
26、怎么测试Redis的连通性? .......................................................
27、怎么理解Redis事务? ..................................................................
28、Redis事务相关的命令有哪几个? ...............................................
29、Rediskey的过期时间和永久有效分别怎么设置?....................
30、Redis如何做内存优化? ...........................................................
31、Redis回收进程如何工作的? ......................................................
32、都有哪些办法可以降低Redis的内存使用情况呢?..................
33、Redis的内存用完了会发生什么? ...............................................
34、一个Redis实例最多能存放多少的keys?List、Set、SortedSet他们最多能存放多少元素? .................................................................
35、MySQL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据? .............................................................
36、Redis最适合的场景? ...................................................................
37、假如Redis里面有1亿个key,其中有10w个key是以某个固定的已知的前缀开头的,如果将它们全部找出来? ...............................
38、如果有大量的key需要设置同一时间过期,一般需要注意什么?
39、使用过Redis做异步队列么,你是怎么用的? ..........................
40、使用过Redis分布式锁么,它是什么回事? ..............................
说明:本文限于篇幅,故而只展示部分的面试内容,完整的Java面试学习文档小编已经帮你整理好了,有需要的朋友点赞+关注 查看评论区获取方式!!、大厂面试学习资料哦!