Java/web基础java
Static,final关键字,抽象类,代码块,Object类的方法,==和equelsmysql
集合的继承关系及其特性,以及hashMap存取(1.7,1.8),常见IO流对象及使用linux
反射的知识点nginx
经常使用设计模式:git
多线程方面:web
了解并发面试
建立线程redis
线程生命周期,算法
线程中的方法:spring
(sleep.wait,notify,join,yeild,interrupt,interrupted,isInterrupted)
synchronized用法(静态方法,非静态方法),特色和缺点等
volatile关键字用法,JMM内存模型,happens-before原则,使用场景等
线程池,继承关系,任务类型和区别,核心参数和工做流程策略,几种常见线程池
JUC包下countdownlatch,seamphore,cyclicbarrier的使用
Threadlocal,conCurrenthashmap使用
经常使用阻塞队列及使用,区别等
cokkie和session的使用,区别等http/https,servlet,get,post请求
NIO等
代码考察:二分查找,冒泡排序,递归,死锁,单列,设计模式,集合操做
框架:
SpringMVC流程,注解,拦截器的使用,@ControllerAdvice+@ExceptionHandler全局异常
Spring IOC/AOP的理解,
Bean的生命周期,做用域
自定义AOP类,JDK/cglib代理
Spring事物,隔离级别,传播机制
Spring中多线程@EnableAsync, @Async
Spring定时任务
自定义注解
SpringBoot:使用,理解,一些注解做用等。。。
Mybatis
Mybatis的工做流程,mybatis的拦截器机制
#{}和${}的用法和区别
mybatis一级缓存二级缓存以及两者区别,二级缓存的策略
数据库:
优化方案;
索引的基本知识
索引使用场景和索引失效场景,
索引的数据结构:
读写分离,其余。。。
JVM:
虚拟机的内存区域分类,用处,异常等信息,常见参数(xms,xmx…)
内存分配的方式以及如何选择
内存泄漏和内存溢出
对象的访问定位的两种方式(句柄和直接指针两种方式)
对象建立的步骤
判断一个对象是否存活?(或者GC对象的断定方法)
java垃圾回收机制
垃圾收集算法和经常使用垃圾回收器,GC回收策略(minor gc,Major GC,full gc)
类加载机制(类加载器,自定义,什么场景使用)+双亲委派
分布式:
CAP,BASE理论
分布式事物的实现方式(2段,3段,基于最终一致性和TCC补偿)
分布式锁的实现
分布式锁的使用场景
分布式惟一ID生成方案
Redis:
数据结构,经常使用API,持久化,分片集群
Dubbo+zookeeper/Cloud:RPC和REST
其余:mq,quartz,linux,docker等,其余工做中的问题
数禾:
6.rabbitMq,你是用来干啥的,讲讲,路由模式怎么讲消息发送到指定的queue
7.Nginx反向代理和负载均衡如何配置
8dubbo超时机制
10.mysql查询的时候,若是某一列有一个字段是null,那么相对在查询结果集的前面,仍是后面?为何?
12.线程池,有哪几种,几个重要参数说一下
诺亚财富:
1.jwt往死里问。
2.hsahMap的原理、hashMap jdk1.8比jdk1.7有哪些变化,红黑树的算法时间复杂度是多少,链表的时间复杂度是多少?
3.单点登陆问题,若是一个用户开启两个浏览器,怎么再第二个浏览器登陆的时候,把第一个登出
4.rabbitMq 生产者怎么保证消费者必定消费了消息。
5.给我一个数字,让我在数组里以最快的速度找出一组两个数字的和等于这个数字,而且输出两个数字的下标
6.redis我都用过哪些数据结构,通常都用来放什么,链接用的是jedis。仍是redisTemplate
7.分布式事务,通常都有个全局事务id,若是让你本身设计全局事务id,你怎么设计,不借用任何中间件
8jpa,我是用来连mysql的吗,我回答是,他就没问了
9. 分布式任务调度框架
10.git版本管理工具,咱们是怎么管理接口的版本的
1.分布式锁不用redisson框架实现,直接用redis怎么实现
2.hashMap数组+链表的链表是怎么排序的?懂底层实现吗
3.concurrentHashMap 什么状况下加锁
4.redis数据结构zset用过吗?用来干啥的
5.悲观锁、乐观锁、乐观锁是怎么实现的,CAS、AQS、ABA是个啥玩意,我不懂
6.mysql索引算法,B+树讲一下,预编译有什么好处,除了防止sql注入还有啥好处;#和$的区别;最左原则讲一下
7.怎么作到百亿级别的数据查询,只须要几毫秒就能返回想要的结果
8.若是有个很大的文件,在并发量几百甚至上千的状况下,都去请求这个文件,你怎么作好快速响应?
9.线程池有哪几种,经常使用的的那几个参数讲一下,都是什么意义,你经常使用哪一个,我说newFIxed那个,他说使用这个线程池须要注意什么,我没想起来?
10.线程有哪些状态,说一下,run和strat有什么区别
11.若是一个能支撑100并发的如今忽然让支持300甚至500并发,又不给你增长机器,你怎么作?
12.kafka有什么很差的地方吗?dubbo+zookeeper有什么很差的地方吗?使用zookeeper作过度布式锁吗?
13.分布式事务用过哪些?跨库事务用过吗?
分享下今天的面试题:说下HashMap,nginx使用那些功能,线程池,ZK有那些功能,选举咋弄的,voliate关键字用法,项目结构图,数据库优化,B数b+树的区别,threadLoal的实现和问题,手写涉及模式,AOP的代理及实现,分布式事物的实现,多路复用,JVM的垃圾收集算法优缺点,五子棋怎么收子,怎么保证线程安全和又发挥多线程的快速做用,Spring Cloud hystrix中信号量和线程池的区别,ribbon的实现原理,CPU满了怎么检查,docker File命令,CAS怎么实现共享数据的分配
redis和数据库的一致性问题
zookeeper底层协议
手写rpc框架
zookeeper选举机制算法
zookpper生产者挂了,消费者怎么办
reids持久化机制
redis主从同步机制
redis若是物理内存快用完了怎么办
分库分表
怎么作两个库的表的关联查询
fullGc发生在哪里
mongo分配的副本
mysql索引会不会用在varchar列上
restful风格怎么理解
Spring中的CacheManager