首页 > 笔经面经 > 二月份面经总结

二月份面经总结 内部员工回复

头像
professor_mai
编辑于 2021-02-25 15:51:32 APP内打开
赞 45 | 收藏 297 | 回复18 | 浏览8266

深信服一面-2.7

2月份第一次面试,也是复习完之后第一次面试,主要是想检验一下自己的复习效果,因为一个月都没有面试了,总体上还是稍微有点紧张,但是自我感觉表现不错,面试官评价基础比较扎实,期待二面!

总体感觉还是不错的,面试官很nice,本来是昨天面试的,因为昨天生病了,所以跟面试官约了今天上午10点,面试官非常守时,10点就准时打电话给我了,给面试官点赞!

电话面,50分钟

  1. 自我介绍,项目介绍
  2. 因为项目里面用到了SpringBoot,一上来就直接问SpringBoot
  3. SpringBoot跟Spring的关系
  4. SpringBoot的自动装配原理
  5. 对象的比较有哪几种方式
  6. hashcode方法的作用
  7. HashMap put方法的流程
  8. 线程安全在java中的实现方式
  9. 说说volatile
  10. 说一下一次完整的 HTTP 请求所经历的步骤,用到了那些协议,具体说一下
  11. 说说你是怎么进行sql调优的,举自己遇到的一个场景
  12. 联合索引a,b,where a>5 and b=5, 索引会失效吗?
  13. 你平时用的是哪种事务隔离机制,简单说说原理
  14. 聊聊jvm,jvm内存划分说一下
  15. jvm堆的分代思想说一下
  16. 大对象的分配流程说一下
  17. 多线程有用过吗?你简单说说
这里,我详细说了一下线程池,把线程池的原理说了一下
追问:有自己实现过线程池吗?你是怎么实现的,里面的参数你是怎么设置的。

这里真的给自己挖了一个大坑,没想到会问这么深,当时就顺口说了线程池,其实根本就没怎么用,都是自己写的小玩具,没有考虑这么多!

  1. Lock包下的类有了解吗?说说你经常使用的一些并发类库
  2. Redis缓存穿透、缓存击穿、缓存雪崩了解吗?详细说说,并给出解决方案
  3. 说说Redis的基本数据类型
  4. Netty了解吗,你说说他为什么高性能
  5. Netty零拷贝了解吗?
  6. Netty可以自定义序列化机制吗?有自己实现过自定义的序列化机制吗
  7. 有自己实现过chandlehandler吗?就是有自己去处理过一些数据包吗

总结一下,面试官全程根据简历来问,基本上都是自己熟悉的点,面试体验非常棒,许愿二面!


阿里云存储一面-2.10

今天是年二十九,没想到阿里面试官还在工作,致敬阿里!!!面试官很nice,不断提醒,态度也很好,只可惜我水平有限

  1. 自我介绍
  2. 问一下什么时候能实习
  3. jvm内存模型
  4. 重载和重写的区别

这里可能答得不太好,面试官就不断提醒

重载跟重写在方法参数上有什么区别?

面试官:还有吗?

我:额额。。。。。。没有了吧,其实还有的!(超不自信)

追问:

那他们分别在哪个阶段发生?(这里问的是在编译期还是运行期)

再追问:

构造器可以重写吗

我:不可以,构造器是不能被继承的,因为每个类的类名都不相同,而构造器名称与类名相同,所以根本谈不上继承。 又由于构造器不能继承,所以就不能被重写。

继续追问:

那构造器可以被重载吗?

我:可以,bbbbbb说了一堆原因

  1. 深拷贝和浅拷贝说一下
  2. 程序,进程,线程说一下
  3. hashcode和equals有没重写过?说一下,比如说,你重写了equals,那hashcode要不要被重写?
  4. 获得键盘输入是什么方法
  5. BIO,AIO,NIO了解吗?

追问:AIO有哪些应用吗?有见过吗

我:???? 反套路了,怎么问起了AIO。

  1. 做题目:

第一道是反转链表

还有一道是二叉树的右视图

image.png



阿里云原生一面-2.20


首先当然是点赞阿里面试官啦,准时,态度友好!再一次感谢阿里给的机会!

  1. 上来直接怼项目

面试官;我看你项目难点只写了怎么实现,但是难在哪里没有提到,你能说一下难在哪里吗?

我:。。。。这里我只能勉强从实现方案上吹了一波,这里还要回去再想想要怎么说才好!(这里真的充分体现了你平时对项目的思考的重要性!

面试官继续追问看你用的Redis比较多,你解释一下缓存雪崩吧!你在项目中是怎么解决缓存雪崩的?

面试官:本地缓存你是怎么做的,你具体说说,热帖是怎么存储的!

面试官继续追问:那这个本地缓存实时性如何保证你是怎么解决的。

面试官:那这个缓存雪崩问题还有别的解决方案吗?

我:还可以通过随机化Key的过期时间来解决;请求限流和服务降级:通过限制 DB 的每秒请求数,避免数据库挂掉。对于被限流的请求,采用服务降级处理,比如提供默认的值,或者空白值

好了,我们继续下一个。

说说Redis持久化机制吧,你在项目中是怎么配置的。

说说jvm内存结构的划分和GC算法

我看你简历上写了docker,那K8S了解吗

分布式有了解过吗?

说说进程通信有哪几种方式

说说进程同步机制

手撕LRU


字节教育业务一面-2.22

自我介绍

项目介绍

Redis的HyperLogLog的底层实现
为什么不用HashSet,而用 HyperLogLog

说说Bitmap的底层实现,为什么要采用Bitmap

我看你项目也用到了zset,说说zset的底层实现

说说为什么Redis采用跳表而不用红黑树来实现zset

说说有什么开源项目红黑树实现的

为什么jdk的HashMap要用红黑树

说说红黑树的性质

说说红黑树和AVL树的区别

说说红黑树的红黑节点的数量

说说键盘敲入字符时,操作系统期间发生了什么

说说系统调用的流程算法二叉树序列化与反序列化

image.png


阿里淘系基础架构一面-2.23

自我介绍

开始怼项目

为什么统计DAU的时候不用HyperLogLog

因为前面吹到了有一个统计用户连续登录的需求,所以你说说怎么实现这个需求

你说说这个redis缓存跟这个本地缓存是怎么设计的(热帖模块)

redis在热帖模块用到的数据结构是什么,你是怎么设计的

本地缓存是内存缓存?本地缓存和redis之间是怎么读写的(一致性)?
你的项目是集群部署还是单机部署,如果是集群部署,那有没有优化的空间,也就是说集群部署的话,你这个定时任务的启动时间怎么来统一呢?因为部署时间不一致,很可能会导致定时任务拉的数据会不一致。

那如果数据更新得比较频繁怎么办那怎么做?也就是删除缓存导致缓存失效,就要改变策略!

说说Redis的持久化方案,优缺点、应用场景

项目实现的feed流是怎么更新的,是实时更新吗,因为数据是有可能一直在变化的。

你做的社区平台的最核心的几个模型是怎么样的,你是怎么设计的,就是问领域驱动模型你是怎么做的?

你MySQL里面主要存的是哪些对象!

有没有进行过SQL优化,说说你怎么做的,比如你拿到一个SQL语句,你要怎么分析?

索引的数据结构一般会有几种

说说B+树

MySQL的日志了解吗,说说binlog

binlog的主要应用场景
说说主从同步的原理

在浏览器地址栏输入一个URL后回车,背后会进行哪些技术步骤?

HTTPS和HTTP的区别

HTTPS的TLS握手详细说一下

问ThreadLocal,ThreadLocal的应用场景、synchronized,volatile原理和应用场景,原子类跟volatile的区别请举一个场景说说,线程池、concurrentHashMap、HashMap原理

equals和hashcode的关系

springioc和aop

spring怎么解决这个循坏依赖

RPC实现原理(最后强行吹牛逼)

阿里云原生(别的团队)一面-2.23

自我介绍

开始怼项目,你在做项目的过程中有没有遇到什么问题,可以突出你的思考能力的。

哪些东西要放到本地缓存里面,哪些东西要放到redis里面?

TCP是怎么保证可靠传输的

重传机制详细说一下

详细说说快重传

你理解TIME_WAIT状态吗

为何一定要等 2MSL ?

如果四次挥手最后一个包丢失了怎么办

在浏览器地址栏输入一个URL后回车,背后会进行哪些技术步骤?

DNS怎么递归查询

本地域名服务器访问之后,更上一级的DNS服务的ip地址知道吗,是多少

可以配多个DNS服务器吗?它的访问顺序是怎么样的
我:不了解

好,继续,假设已经知道IP地址了,下一步怎么做

通过IP地址怎么找到MAC地址,会找到谁的MAC地址

你觉得阿里的公网IP地址会存到我们学校的局域网里面吗

进程跟线程的区别,进程之间怎么通信的,线程之间怎么通信的

为什么线程开销比较少

进程、线程的上下文切换是怎么样的

哪些场景下用到了软中断、哪些场景用到了硬中断(请举场景)

好吧好吧,你好像对网络比较熟,再问你一个网络的问题,***你了解吗?

不知道说啥!

最后问了一个HashMap的底层,为什么链表长度大于8就转成红黑树


支付宝一面-2.23

第一次遇到小姐姐来给我面试,非常nice,声音超好听!

自我介绍

问了一下平时怎么学习

jdk源码看了多少

都有看,哈哈哈哈

先怼网络,TCP和UDP的区别

TCP为什么要进行三次握手

HTTP和HTTPS的区别

sql调优的思路

除了增加索引,还有别的方法来进行sql调优吗?

你要快速查询到一个结果,除了SQL调优还有什么方案可以解决的吗

这里我提到了缓存

好了,上面我提到这个缓存,开始问redis

redis为什么这快

本地缓存的是怎么实现的

什么情况下用redis缓存,什么情况下用本地缓存

这里我答非所问了,

本地缓存和分布式缓存的优缺点

redis的应用场景,除了你项目中用到的

好了,这里又挖坑了,说了消息队列

你对消息中间件有了解吗?

重点提了一下RocketMQ

那你用这个RocketMQ是解决什么样的问题

怎么保证redis和数据库的双写一致性

消息队列怎么实现的

你在项目中怎么解决这个缓存雪崩

了解过缓存穿透吗,说说他跟缓存雪崩的不同

怎么解决这个缓存穿透的问题

说说MySQL事务的特点

说说Redis事务

MySQL锁的类型

MySQL的悲观锁是怎么实现的


支付宝二面-2.24

自我介绍

问了一下对哪方面的知识了解得比较深入

我这里说了计网,然后就问了访问一个网站,网络层主要做了什么

问了DNS一般能缓存多少条数据

不了解

DNS怎么做到不宕机

这里我提到了集群

你所知道的集群部署是什么样子的吗

就是在问怎么做负载均衡等等这些策略

操作系统的内存管理

跑起一个helloword的具体流程(从Java角度分析)

java虚拟机是什么

java虚拟机有多少个版本

双亲委派机制的流程,为什么要做双亲委派机制

项目,你在项目中主要负责什么

你的项目是自己做着玩的吧

我:是的,就是一个玩具

因为我做项目介绍的时候提到这个关注和取关的功能,那你有了解过这个微博是怎么做这个功能的吗?(举个场景:如果粉丝数有一百万,你要怎么做)

你有学习过分布式吗,或者是MySQL数据量比较大的一些方案等等

这里我提到了dubbo(应该直接说不了解的)

dubbo有了解过吗

不会

MySQL的索引优化方案

MySQL数据量比较大的时候,你应该怎么做

好吧,我只知道分库分表

你对哪些框架有比较深入的了解

我提到了SpringBoot,吹了自动装配原理

你讲讲SpringBoot的一个启动流程

IOC容器是什么时候初始化Bean

这里说了SpringBean的生命周期

那你在做项目的时候,有碰到过什么难点吗

好了,这里又给挖坑了,提到了HyperLogLog

你说说HyperLogLog的原理

后面问面试官我的情况

他说:平时做项目的时候想多一点应用场景,加深一下对项目的理解。


阿里云原生二面-2.24

自我介绍

项目介绍

  1. 注册登录模块你是怎么做的
  2. 为什么需要分布式session
  3. 怎么保证分布式缓存redis和本地缓存的一致性(在集群环境下)
  4. 你现在目前有redis、有数据库,你是怎么把你的性能提升到极致

场景题

  1. 有十亿个无符号整型,怎么最快查出我输入的这个数是否在某个范围内

说了桶排序

有没有更好的方法

好了,想了一会后,又说了跳表

好了,终于想到面试官比较满意的答案了,散列表

好了,面试官还是不满意,如果你这样子做会有hash冲突的情况,这时候时间复杂度就不是O(1)了,请问有没效率更高的解法

又想到了布隆过滤器

  1. 十亿的日志,无序的日期,如何按降序排,你是用什么数据结构来做的,你要怎么实现(提到了基数排序,字符串排序

怎么快速地按照给定的范围把数据取出来

  1. 求两个数组(数据量很大)怎么最快地求出两个数相乘的最大值

开始问多线程:

  1. 多线程是如何进行通信的,多进程是如何进行通信的
  2. 什么时候用多进程,什么时候用多线程,他们之间的优略势是什么
  3. 详细说说中断

索引一般怎么用比较好

数据库的每张表的容量是有上限的,如果数据量比较大的时候,你要怎么做

讲讲SpringIOC和AOP的原理,一般用在什么场景比较多

你的项目现在是一个单机版的,像这个redis,如果流量比较大,你怎么去把redis的流量给均摊开。(这里问的是redis切片集群怎么做)


更多模拟面试

18条回帖

回帖
加载中...
话题 回帖

推荐话题

相关热帖

笔经面经近期热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐