京东 T7 团队技术 4 面:线程池 + 索引 +Spring + 分布式锁
金九银十过了金三银四还会远嘛,本文后面分享面试题给正准备跳槽,准备找工作的你,这次面试京东也是做了很多的准备,还好顺利拿到了 offer。
面试,其实是一个双向选择的过程,在这个过程里,我们不应该抱着畏惧的心态去对待,这样反而会影响自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。希望大家都能找到适合自己的公司,开开心心的撸代码。
进入正题
京东一面(一个小时):
===========
Java 容器有哪些?哪些是同步容器,哪些是并发容器?
线程池的工作原理,几个重要参数?
给了具体几个参数,分析线程池会怎么做?
ArrayList 和 LinkedList 的插入和访问的时间复杂度?
Has
hMap push 方法的执行过程?
java 反射原理, 注解原理?
说说一致性 Hash 原理
HashMap 在什么情况下会扩容,或者有哪些操作会导致扩容?
HashMap 检测到 hash 冲突后,将元素插入在链表的末尾还是开头?
1.8 还采用了红黑树,讲讲红黑树的特性,为什么人家一定要用红黑树而不是 AVL、B 树之类的?
https 和 http 区别,有没有用过其他安全传输手段?
新生代分为几个区?使用什么算法进行垃圾回收?为什么使用这个算法?
线程池的工作原理,几个重要参数,然后给了具体几个参数分析线程池会怎么做,最后问阻塞队列的作用是什么?
代码编写:两个线程,一个线程打印奇数,一个打印偶数,控制交替打印奇偶数。(有多种方法实现,最好能比较优劣)
linux 怎么查看系统负载情况?
请详细描述 springmvc 处理请求全流程?
spring 一个 bean 装配的过程?
项目用 Spring 比较多,有没有了解 Spring 的原理?AOP 和 IOC 的原理
=======================================================================
了解哪些排序算法,讲讲复杂度
手撕归并排序
查询中哪些情况不会使用索引?
数据库索引,底层是怎样实现的,为什么要用 B 树索引?
Mysql 主从同步的实现原理?
MySQL 是怎么用 B+树?
谈谈数据库乐观锁与悲观锁?
有使用过哪些 NoSQL 数据库?MongoDB 和 Redis 适用哪些场景?
描述分布式事务之 TCC 服务设计?
Redis 和 memcache 有什么区别?Redis 为什么比 memcache 有优势?
Redis 的数据结构
海量数据过滤,黑名单过滤一个 url。
讲一讲 AtomicInteger,为什么要用 CAS 而不是 synchronized?
=======================================================================
考虑 redis 的时候,有没有考虑容量?大概数据量会有多少?
Redis 的 list zset 的底层实现
solr 和 mongodb 的区别,存数据为什么不用 solr?
分布式 session 的共享方案有哪些,有什么优劣势
谈谈分布式锁、以及分布式全局唯一 ID 的实现比较?
集群监控的时候,重点需要关注哪些技术指标?这些指标如何优化?
从千万的数据到亿级的数据,会面临哪些技术挑战?你的技术解决思路?
数据库分库分表需要怎样来实现?
排序算法的复杂度,快速排序非递归实现。
消息中间件有哪些?他们之间的优劣势?
数据库主从同步数据一致性如何解决?技术方案的优劣势比较?
分布式锁的实现方式你知道有哪些?主流的解决方案是什么?
=======================================================================
评论