疫情下一个大厂面试回来的面试题

Java基础

浏览数:45

2020-6-15

阿里巴巴
1、主键索引与非主键索引有什么区别
2、redis与memcached有什么区别,为什么选择Redis,而不是memcached
3、JVM的内存模型可以说下吗?
4、选择一个做过的比较熟悉的项目说一下
5、生产环境排查过什么问题?是如何排查的?
6、MySQL建立索引有什么规则
7、为什么在技术选型时选择MySQL,而不是选择Oracle

vivo
1、redis主要用于什么业务场景
2、zooker是基于什么原理做分布式锁的?
3、关于数据库索引唯一索引、联合索引有什么区别?索引生效与失效的情况?如何查看索引的执行情况?
4、Dubbo如何进行流量控制
5、JDK中的bin目录下的工具使用过哪些?
6、分析过应用宕机的内存堆文件吗?如何进行分析?
7、ActiveMQ、rabbitmq和rockmq的特性?这些消息中间件的消息延迟、准确率怎样?
8、spring事务的隔离级别、传播特性
9、redis有哪些数据类型
10、SQL如何进行优化,索引有哪些数据结构?这些数据结构有什么区别
11、在spring中方法A,嵌套调用B方法;A方法和B方法都有事务注解;如果B方法出现了异常,A方法的事务是如何处理的,表现如何?
12、项目中如何进行技术选型
13、你是否会在项目中使用自己新学的新技术
14、有用过elasticsearch吗?
15、你在什么业务场景下使用了Redis中的List数据结构;Sorted Set你是怎样在项目中使用的?
16、Redis的部署模式有哪些?
17、Redis为什么说是单线程的

字节跳动
1、第一题. 字节跳动在北京有N个工区,形成一个环状,Bytebus是往返在各个工区的通勤车,按工区的顺序行驶,其中第 i 个工区有汽油 gas[i] 升。
你有一辆油箱容量无限的的Bytebus,从第 i 个工区开往第 i+1 个工区需要消耗汽油 cost[i] 升。你从其中的一个工区出发,开始时油箱为空。如果你
可以绕环路行驶一周,则返回出发时工区的编号,否则返回 -1。

输入: 
gas  = [1,2,3,4,5]
cost = [3,4,5,1,2]
输出: 3

2、spring事务、能处理那些异常、是否可以配置抓那些异常 答错:处理的是runtime exception和error,而不是checked exception
3、mysql的索引hash b+tree
4、http是怎样通讯的,比如在浏览器输入一个域名,是怎样得一个流程
5、动态代理都有什么方式
6、redis的数据结构有哪些,redis数据过期策略是什么方式
7、知道MyISAM存储引擎的结构吗?InnoDB的呢? (没答出来)
8、用的redis的集群模式是哪些?
9、对jvm的gc了解吗?如果理解
10、了解java中AQS的相关知识吗?(重點)

招银网络
1、MySQL的索引有什么数据结构?Hash与B+tree有什么区别
2、Spring MVC的执行流程是怎样的,请详述一下
3、怎样实现分布式锁?有哪些方式实现?
4、实现线程有什么方式?线程有哪些状态?状态之间是怎样转换的?
5、如何优化SQL、优化数据库
6、redis的数据过期过期策略是怎样的
7、nginx用来做什么?请大概说下
8、MyBatis的#与$有什么区别,returnType和returnMap的区别
9、springboot原理是什么?starter是提供的是什么?有什么优势?
10、springcloud有哪些组件?都是什么作用?
11、两个柜面系统整合有什么难点?是如何克服这些难点的?
12、你搭建项目工程的流程、如何配置等、整个系统的部署架构
13、项目中的安全问题你是怎么控制的
14、挑一个你做的核心项目介绍一下
15、请自我介绍一下
16、项目中的消息中间件都用于什么业务场景?短信发送对接、数据埋点上送
17、线程池是怎样实现的,说下原理
18、了解java中JUC与CAS的相关知识吗?
19、了解java中JUC与CAS的相关知识吗?

作者:happyhuangjinjin