有赞一面凉经
有赞一面凉经
有赞电话一面凉经,三十多分钟,写个面经攒点人品。我的回答可能有很多错误,也有很多不会的,大家可以一起讨论。
1、自我介绍
2、学校项目
3、假设一个商品a价格为10,100个线程进行购买,怎么解决并发问题(将物品数量定义为AtomicInteger)
4、AtomicInteger的原理,volatile的源码,CAS的源码(volatile只知道原理)
5、ArrayList和LinkedList的区别,试用场景(增删改查效率),除了这些还有吗(不知道),二分查找用哪个(ArrayList)
6、mysql索引为什么用B+树(层数少,数据都在叶子节点blablabla)
7、有一个联合索引(a,b,c),select * from tbl where a=0 and c=0能否命中,select * from tbl where c=0呢?(最左前缀)
8、TCP为什么握手三次,挥手多一次?(服务器接收完数据才能断开)
9、介绍双亲委派模型,为什么用这个?(类随着它的加载器一起具备了一种带有优先级的层次关系)
10、算法题,1000000个数,都位于0-100,给他们排序(用一个长度为101的数组,存储每个数的频次,遍历一次)
11、mysql有一亿数据,要全部取出,怎么弄?(用多个线程根据自增主键的范围取出)如果主键不自增,分配不均匀呢?(不知道)
12、Redis解决什么问题,存储什么数据(热数据)
13、使用Redis作为mysql的缓存,修改数据先改mysql还是Redis(mysql)
14、第三问的场景,假设有两个线程一个线程将10->9,一个线程9->8,但是到了Redis两个命令顺序变了,怎么解决?(不知道)
15、继续这个场景,假设10->9的时候,Redis断连了,重新连接的时候怎么保持一致性(AOF?)
16、你有什么问题吗(表现怎么样,基础很好,但是实际应用不好,大表优化啥的不行)
基础问题都答上来了,奈何面试官很喜欢问优化应用场景,也没什么大项目,凉凉。
#有赞##面经##Java工程师##校招#