华为普工面试经历,透彻分析源码

这篇博客详述了一位求职者在华为面试的经历,涵盖了从一面到三面的技术问题,包括数据结构(如二叉树、HashMap、ConcurrentHashMap)、并发(synchronized、ReentrantLock)、数据库优化以及Redis缓存一致性等内容。博主还分享了如何准备面试并提供了相关学习资源。
摘要由CSDN通过智能技术生成

一面

1. 二叉搜索树和平衡二叉树有什么关系,强平衡二叉树(AVL 树)和弱平衡二叉树

2. B 树和 B+树的区别,为什么 MySQL 要使用 B+树

3. HashMap 如何解决 Hash 冲突

4. epoll 和 poll 的区别,及其应用场景

5. 简述线程池原理,FixedThreadPool 用的阻塞队列是什么?

6. sychronized 和 ReentrantLock 的区别

7. sychronized 的自旋锁、偏向锁、轻量级锁、重量级锁,分别介绍和联系

8. HTTP 有哪些问题,加密算法有哪些,针对不同加密方式可能产生的问题,及其

二面

1. 设计模式有哪些大类,及熟悉其中哪些设计模式

2. volatile 关键字,他是如何保证可见性,有序性

3. Java 的内存结构,堆分为哪几部分,默认年龄多大进入老年代

4. ConcurrentHashMap 如何保证线程安全,jdk1.8 有什么变化

5. 为什么 ConcurrentHashMap 底层为什么要红黑树

6. 如何做的 MySQL 优化

7. 讲一下 oom 以及遇到这种情况怎么处理的,是否使用过日志分析工具

三面

1. 项目介绍

2. 你们怎么保证 Redis 缓存和数据库的数据一致性?

3. Redis 缓存雪崩?击穿?穿透?

4. 你熟悉哪些消息中间件,有做过性能比较?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值