java同步锁原理,统统给你解决!

Posted 2021Java面试题

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java同步锁原理,统统给你解决!相关的知识,希望对你有一定的参考价值。

美团面试经历(还原最真实的4面)

美团一面:

1、自我介绍

2、聊项目相关

  • 介绍项目
  • 怎么保证redis与mysql的数据一致性
  • 见你写了个加随机数预防缓存雪崩,解释一下
  • 未改进和改进后的Jmter测试性能对比

3、Redis

  • 为什么选择Redis作为缓存?
  • 为什么Redis的性能十分的高?
  • 说一下单进程、单线程的Redis和你平时写的多线程程序的对比
  • 如何保证Redis的高可用?(哨兵、持久化策略RDB、AOF)
  • 解释一下哨兵、RDB、AOF
  • 主从一致性
  • Redis数据淘汰策略
  • 能说一下分布式事务吗?
  • setnx是事务吗?

4、Mysql

  • 解释一下事务
  • 讲一讲事务隔离级别
  • 为什么使用B+树作为索引
  • 聚簇索引和非聚簇索引的区别

5、Java

  • Java是如何保证其安全性的
  • 刚见你说了Java 内存泄漏问题,解释一下什么情况下会出现
  • 说一下BIO、NIO、AIO

6、手撕算法

  • 一个数组找出出现次数最多的一个数,如果多个数出现的次数相同则输出第一个
  • 生产者消费者(一对一)

7、其它

  • 平时怎么学习的
  • 有什么需要问的吗?

美团二面:

1、手撕算法

  • 10个多线程保证 i从0加到10 (差点翻车,主线程忙等另外10个线程完结
  • 反转链表
  • 上台阶(n=80)

2、操作系统

  • 常用的linux命令说一下
  • 操作系统中的信号 和 信号量有什么关系
  • epoll 和 Selector 有什么区别?

3、计算机网络

  • 说一下拥塞控制

4、数据结构

  • 说一下红黑树,你平时用的技术哪里用到了它?
  • 哈希表怎么处理冲突?

5、项目相关

  • 把项目放到服务器上运行的时候有没有遇到什么问题?查看项目运行的状态怎么做?
  • spring 和 springboot的关系你是怎么理解的?
  • Spring IOC和AOP说一下你的理解
  • 为什么用消息队列?
  • 对于消息的重复消费你有什么设计方案吗?

美团三面:

  • 你怎么学的Java啊?
  • 设计模式了解吗?单例讲一下,懒汉饿汉double-check,怎么实现。策略模式,外观模式,适配器模式,装饰器模式,分别讲一下
  • 联合索引什么时候不会触发索引?
  • AOP了解么,有什么好处,如何使用,怎么实现的?
  • 支付宝到银行的转账业务怎么实现?
  • redis实现分布式锁
  • 三台机器集群,按不同权重访问,怎么做?

美团四面(hr):

  • 先介绍一下你自己吧
  • 说一下四种IO模型
  • 平时怎么去学习的?
  • 为什么你说学习了要去实践?
  • 说一下的最大的优点和缺点
  • 举一下你缺点的例子
  • 想象一下你几十年后是怎样的生活?
  • 你觉得最痛苦的一段时间
  • 对你影响最大的一件事情
  • 在安排活动的过程中有没有发生什么冲突?
  • 你有什么崇拜的人吗?
  • 你有什么想问的?

总结

互联网大厂比较喜欢的人才特点:对技术有热情,强硬的技术基础实力;主动,善于团队协作,善于总结思考。无论是哪家公司,都很重视高并发高可用技术,重视基础,所以千万别小看任何知识。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。

**另外想要面试题及答案的小伙伴请点击这里自行领取,本人还整理收藏了2021年多家公司面试知识点以及各种技术点整理 **

下面有部分截图希望能对大家有所帮助。

的小伙伴请点击这里自行领取,本人还整理收藏了2021年多家公司面试知识点以及各种技术点整理 **

下面有部分截图希望能对大家有所帮助。

在这里插入图片描述

以上是关于java同步锁原理,统统给你解决!的主要内容,如果未能解决你的问题,请参考以下文章

java中的同步代码块,为啥随便放个对象,就可以锁住代码块呢?啥原理?

Java锁--框架

Java同步锁Synchronized底层源码和原理剖析

java多线程--“锁”总览

Java 并发编程 进阶 -- Java并发包中锁原理剖析(LockSupport抽象同步队列AQS独占锁ReentrantLock读写锁ReentrantReadWriteLock)

Java 并发编程 进阶 -- Java并发包中锁原理剖析(LockSupport抽象同步队列AQS独占锁ReentrantLock读写锁ReentrantReadWriteLock)