写点什么

分享面试阿里、京东、网易等大厂后的面经及面试心得—远程面试

作者:Java-fenn
  • 2022 年 9 月 22 日
    湖南
  • 本文字数:2371 字

    阅读完需:约 8 分钟

受疫情影响,阿里、百度、网易等互联网企业都开启了远程面试。

那么远程面试和正常面试有什么不同吗?并没有!

企业招聘的要求没有改变,改变的仅仅是面试的地点。今年远程面试完几家互联网企业(阿里、京东、网易、头条),总结下来面试的大体思路都基本一致。比如:

  • JVM 参数配置、常用调试工具、分区、类加载,还会问你有需要线上的调试问题吗?遇到死循环 CPU 飙升怎么解决?

  • Java 并发包常用工具用法和原理、会配合集合类一起考,对了还会有 volatile、CAS 原理等。

  • MySQL 也算是必备了,索引存储结构、索引搜索原理、事务的隔离级别和原理,这些真的是逢考必问。当然除了 MySQL,Redis 和 ES 也是面试长文的,大多都是集中到原理。比如 ES 倒排索引、分片原理,Redis 的 zset 原理和使用场景、多路复用、穿透、熔断等等。

  • 框架也是必备的知识点,最常见的就是 AOP 原理,自己怎么实现?Spring Boot 啥原理?框架通常会配合设计模式一起考,比如你最熟悉的设计模式是啥?Spring MVC 里面用了什么设计模式?解决了什么问题?

  • 接下来最重要的就是服务治理了,这里面内容就太多了,Dubbo 也好,Spring Cloud 也罢,总之这个地方最能看得出你真实的工作经验和问题的考虑深度,毕竟没有真正在庞大的系统里面锻炼过真的很难应付这个地方。

  • 没漏掉还有一个最重要的算法,这个就靠平时多练了,LeetCode 中文版上线了,一天一道题,面试必无敌。

说了这么多只有一个重点,就是无论大厂他有没有题库,面试题的大体方向就这么多,你要都掌握了,还担心去大厂?

那么重点就来了,怎么复习呢——刷题!

首先你需要有一个知识点轮廓,对着这个轮廓不停的扩展、延伸,自己查漏补缺。因为虽然知识点就这么多,但是面试官的提问方式还是千奇百怪的,所以你需要通过知识点做相应的延伸,才能融会贯通。

(1)MySQL

MySQL 专题部分

  1. Mysql 中有哪几种锁?

  2. MYSQL 数据表在什么情况下容易损坏?

  3. MySQL 里记录货币用什么字段类型好

  4. MYSQL 支持事务吗?

  5. 解释访问控制列表

  6. 什么是通用 SQL 函数?

  7. 什么是非标准字符串类型?

  8. Mysql 表中允许有多少个 TRIGGERS?

  9. 什么样的对象可以使用 CREATE 语句创建?

  10. NOW()和 CURRENT_DATE()有什么区别?

  11. 可以使用多少列创建索引?

  12. InnoDB 是什么?

  13. Mysql 如何优化 DISTINCT?

  14. 如何输入字符为十六进制数字?

  15. 如何显示前 50 行?

MySQL 答案解析:



(2)Redis

  1. 什么是 Redis?

  2. Redis 相比 memcached 有哪些优势?

  3. Redis 支持哪几种数据类型?

  4. Redis 主要消耗什么物理资源?

  5. Redis 的全称是什么?

  6. Redis 有哪几种数据淘汰策略?

  7. edis 官方为什么不提供 Windows 版本?

  8. 一个字符串类型的值能存储最大容量是多少?

  9. 为什么 Redis 需要把所有数据放到内存中?

  10. Redis 集群方案应该怎么做?都有哪些方案?

  11. Redis 集群方案什么情况下会导致整个集群不可用?

  12. MySQL 里有 2000w 数据,redis 中只存 20w 的数据,如何保证 redis 中的数据都是热点数据?

  13. Redis 有哪些适合的场景?

  14. Redis 支持的 Java 客户端都有哪些?官方推荐用哪个?

  15. Redis 和 Redisson 有什么关系?

  16. Jedis 与 Redisson 对比有什么优缺点?

  17. Redis 如何设置密码及验证密码?

  18. 说说 Redis 哈希槽的概念?

  19. Redis 集群的主从复制模型是怎样的?

  20. Redis 集群会有写操作丢失吗?为什么?

  21. Redis 集群之间是如何复制的?

  22. Redis 集群最大节点个数是多少?

  23. Redis 集群如何选择数据库?

  24. 怎么测试 Redis 的连通性?

  25. Redis 中的管道有什么用?

  26. 怎么理解 Redis 事务?

  27. Redis 事务相关的命令有哪几个?

  28. Redis 如何做内存优化?

  29. Redis 回收进程如何工作的?

  30. Redis 回收使用的是什么算法?

  31. Redis 如何做大量数据插入?

  32. 为什么要做 Redis 分区?

  33. 你知道有哪些 Redis 分区实现方案?

  34. Redis 分区有什么缺点?

  35. Redis 持久化数据和缓存怎么做扩容?

  36. 分布式 Redis 是前期做还是后期规模上来了再做好?为什么?

  37. Twemproxy 是什么?

  38. 支持一致性哈希的客户端有哪些?

  39. Redis 与其他 key-value 存储有什么不同?

  40. Redis 的内存占用情况怎么样?

  41. 都有哪些办法可以降低 Redis 的内存使用情况呢?

  42. 一个 Redis 实例最多能存放多少的 keys?

  43. Redis 常见性能问题和解决方案?

  44. Redis 提供了哪几种持久化方式?

  45. 如何选择合适的持久化方式?

  46. 修改配置不重启 Redis 会实时生效吗?

Redis 答案解析



(3)JVM

  1. 内存模型以及分区,需要详细到每个区放什么。

  2. 堆里面的分区:Eden,survival (from+ to),老年代,各自的特点。

  3. 对象创建方法,对象的内存分配,对象的访问定位。

  4. GC 的两种判定方法

  5. SafePoint 是什么

  6. GC 的三种收集方法:标记清除、标记整理、复制算法的原理与特点,分别用在什么地方,如果让你优化收集方法,有什么思路?

  7. GC 收集器有哪些?CMS 收集器与 G1 收集器的特点。

  8. Minor GC 与 Full GC 分别在什么时候发生?

  9. 几种常用的内存调试工具:jmap、jstack、jconsole、jhat

  10. 类加载的几个过程

  11. JVM 内存分哪几个区,每个区的作用是什么?

  12. 如和判断一个对象是否存活?(或者 GC 对象的判定方法)

  13. 简述 java 垃圾回收机制?

  14. java 中垃圾收集的方法有哪些?

  15. java 内存模型

  16. java 类加载过程?

  17. 简述 java 类加载机制?

  18. 类加载器双亲委派模型机制?

  19. 什么是类加载器,类加载器有哪些?

  20. 简述 java 内存分配与回收策率以及 Minor GC 和 Major GC

JVM 答案解析



资料获取:私信    面试资料    即可打包带走哦!

其他复习宝典

(1)Java 面试手册

  • 性能优化面试专栏

  • 微服务架构面试专栏

  • 并发编程高级面试专栏

  • 开源框架面试题专栏

  • 分布式面试专栏



(2)实战文档

  • Redis 实战

  • MySQL 实战

  • Spring Boot 实战

  • Spring Cloud 实战

  • 实战 Java 虚拟机

以实战 Java 虚拟机为例:

  1. 初探 Java 虚拟机

  2. 认识 Java 虚拟机的基本结构

  3. 常用 Java 虚拟机参数

  4. 垃圾回收概念与算法

  5. 垃圾收集器和内存分配

  6. 性能监控工具

  7. 分析 Java 堆

  8. 锁与并发

  9. Class 文件结构

  10. Class 装载系统

  11. 字节码执行



(3)Java 核心知识点整理文档




由于篇幅限制,很多内容都只展示了目录和截图,这些都整理在文档里,需要这些文档资料的,均可以免费分享给大家,希望所有的程序员都能够学习起来,努力实现我们的大厂梦!

资料获取:私信   面试资料   即可打包带走哦!

用户头像

Java-fenn

关注

需要Java资料或者咨询可加我v : Jimbye 2022.08.16 加入

还未添加个人简介

评论

发布
暂无评论
分享面试阿里、京东、网易等大厂后的面经及面试心得—远程面试_Java_Java-fenn_InfoQ写作社区