会这些Java工程师面试题,月薪至少3W

阿里云面试

1. ThreadLocal有什么缺陷?如果是线程池里的线程用ThreadLocal会有什么问题?

2. 类的加载机制,为什么要用双亲委托?如何打破双亲委托加载机制

3. 如果有一个100万的qps项目,你会从哪些方面考虑系统的设计?

4. 你平时经常用到的设计模式有哪些?

5. 熟悉Reactive开发模式吗?

6. 你熟悉的分布式技术有哪些?了解他们底层的实现机制吗?

7. Springcloud 各个组件的运行机制是什么?

8. TreeMap与TreeSet实现原理是什么?

9. Array和ArrayList的区别?

10. JVM的数据区有哪些,作用是什么?

11. JVM堆内存结构是怎样的?哪些情况会触发GC?会触发哪些GC?

12. 数据库你们是怎么优化的?

13. synchronization 和Lock有什么区别?

14. 用过反向代理服务器吗?用来做什么?nginx负载均衡有哪些参数?

15. 你熟悉的消息对列中间件的实现原理是什么?和其他消息中间对比,有什么优势?

16. Poll与ePool的区别?

17. BIO与NIO有什么区别?

18. 手写代码题,不能是伪代码,能编译通过: 有一个变量list,元素存放集群的实例个数,有一个变量batch批次,根据批次均匀部署应用到集群的所有实例。

19. 你的职业规划?年薪期望薪资?

美团面试题

1、mysql 引擎类型有哪些,各有什么区别,各有什么应用场景?

2、mysql事务隔离级别有哪些,举例说明各自的情况?

3、数据库锁有哪几种?有什么区别?

4、mysql sql 怎么调优和优化,主要看那几个参数,请具体说明一下?

5、mysql 有那几种索引,各有什么区别?

6、什么是悲观锁和乐观锁,说说他们的特点和应用场景?

7、分别说下行级锁和表级锁?update t1 set a = xx for update (a字段不是主键,也没加索引),是行级锁还是表级锁?为什么?

8、mysql和redis都搭建主从和高可用,你在项目中redis一般在什么场景下使用?

9、synchronized和volatile有什么区别,各自有什么应该场景?

10、你在做项目的过程中遇到死锁吗?你是怎么解决死锁问题的?

11、谈谈你对JMM、CAS和AQS的理解,CAS下ABA问题及优化方案?

12、说说单点登录和oauth2协议的流程,它们有什么区别?

13、你常用的设计模式有哪些,请画出类图并讲解一下?

14、面向对象有哪些设计原则?

15、为什么要用Getter和Setter方法,而不是公开属性?

16、jvm 运行时数据区有什么?

17、java GC root 有哪些?

18、jvm gc 如何调优?

19、如何实现限流?限流常用有哪些算法?各自有什么应用场景?

20、你使用过guava里的哪些类?对它的底层实现原理了解多少?

21、在秒杀(分布式)的场景下,如果不使用分布式锁,仅仅只能使用guava工具包和JDK工具类,你怎么实现?

22、讲讲什么是spring aop,他的底层是怎么实现的?

23、spring的核心类有哪些?

24、spring 控制反转和依赖注入是什么?

25、spring的bean 和手工new 出来的对象有什么区别?如果spring 中装配的bean过多会导致什么问题?

26、springCloud 的hystrix 有哪些隔离模式?断路器的工作原理是什么?

27、springCloud 的zuul处理过程是怎么样的?

28、讲讲你对dubbo的集群容错是怎么做的?

29、讲讲dubbo注册中心的实现原理?

30、dubbo和springCloud的区别?各自有什么优缺点?

31、讲讲你对BIO、NIO和Netty的理解以及底层实现?

32、讲讲你对reactor模式的理解?

33、docker和k8s是用来干啥的,请简单说一下?

京东面试题

1、请写出你知道的垃圾回收器及回收算法,并写出该垃圾回收器适用什么样的业务场景或者系统类型。

2、请写出你了解的并发模型/模式(例如:生产者消费者模式),并说明那些模型/模式在项目中使用了。

3、一个主线程A创建了多个子线程C1、C2、C3... ..., 主线程A等待所有子线程C1、C2、 C3......执行完成后才继续执行,请写出Java都有那些实现方式。

4、请写出你了解的系统间的通信方式及其特点和在项目中应用了哪些通信方式。

5、请写出HashMap的数据结构及ConcurrentHashMap相对于HasnMap做了哪些改动。

6、简述Java的类加载机制,并回答一个JVM中可否存在两个相同的类。

7、请写出你使用过的开源框架及对他们的掌握程度。

8、Java类C有两个公有方法M1,M2,这两个方法都配置了切面,其中方法M1调用了M2,请回答调用方法M1时,两个切面的执行情况。

9、请写出关系型数据库索引的类型及存储的数据结构。

10、关系型数据库中表T有A、B、C、D,两个索引idx1(B字段),组合索引idx2(A+B+C字段),查询语句select * From T where B=? and A=? and C=? 会使用哪个索引?并说明理由。

11、关系型数据库搜的类型及粒度。

12、关系型数据库的事务隔离级别。

13、关系型数据库的优化方案。

14、spring事务传播行为类型及其实现原理。

15、分片结构的数据库,动态增加分片的解决方案(提示:数据如何迁移)。

16.、简述分布式事务的原理。

17、1T的日记文件,在一台物理机上,用Java写个程序,统计文件中每条日志的重复次数。

18、用Java实现一个LRU(最近最少使用)策略的缓存。

19、LINUX常用命令
   (1)网络命令:
   (2)文件/文本处理命令:
   (3)定时:
   (2)磁盘命令:

20、简述你了解的设计原则及其含义。

21、简述你了解的设计模式及其在项目中那些地方应用了。

22、简述CAP定理、Base理论。

23、请设计一个抢票系统,能够做到先到先得,总数量可配置,抢购记录持久化。至少产出如下工件:领域对象模型、核心模块划分、部署模型 。

最后,光给面试题不行答案也已经给你们整理出来了

面试大全文档、你值得拥有:

架构文摘公众号粉丝福利大放送:


640?wx_fmt=png


架构视频

点评架构师分享:弄懂JVM只需要这一节课


陆金所架构师分享:阿里面试题之并发编程synchronized底层原理剖析


京东架构师分享:千万级流量架构系统重构


陆金所架构师分享:分布式架构通信基础——NIO底层原理


美团架构师分享:玩转Redis底层


阿里架构师分享:如何设计一个Dubbo框架


扫描下方二维码即可获取面试文档+资料学习


名额有限,先到先得。

添加微信:Ephemeral_0508

获取面试答案+资料学习,前面五百名可以免费获取。

640?wx_fmt=png

加的人比较多,耐心等待

备注:面试资料

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值