跳至主要內容

日常实习 - 星尘数据

AruNi_Lu杂谈面经约 1129 字大约 4 分钟

本文内容

2023/3/28(一面)

项目

  • 讲讲你这个项目的背景和怎么做的?
  • Kafka 用来做什么?
  • ES 用来做什么?
  • 怎么保证 ES 和数据库中的数据一致呢?
  • 讲讲 Redis 的五种基本数据类型,你项目中是怎么使用的?
  • 你项目在使用缓存时采用的是什么策略?
  • 如果你删除缓存后,来了大量的请求,全部打到数据库,怎么解决呢?
  • 你使用 Caffeine 配合 Redis 做了二级缓存,如果我部署多台服务器,在更新本地缓存的时候,一台更新失败了,一台更新成功了,怎么办呢?
  • 你写到使用缓存后,QPS 提高了 20 倍,你怎么做的量化?怎么测的?

Java

  • 讲讲 HashMap 和 ConcurrentHashMap 的区别
  • 了解过 CountdownLatch 和 CyclicBarrier 的区别吗?
  • 讲讲线程池的几个核心参数
  • 创建线程池有哪几种方式?
  • 使用 Executors 来创建线程池会有什么问题?
  • 如果让你来设计核心线程数,你会怎么设计?
  • 多线程并发的本质了解吗?或者说相关的一些特性
  • JDK 8 默认的垃圾回收器是什么?
  • 讲一下五种 IO 模型

框架

  • 讲讲你对 Spring AOP 的理解
  • 能讲一下动态代理吗?
  • BeanFactory 和 ApplicationContext 有什么区别?
  • Spring 事物的实现方式或低层原理

MySQL & Redis

  • InnoDB 为什么要使用 B+ 树做索引?
  • 一个 select 语句的执行流程了解吗?
  • MySQL 默认的隔离级别是什么?
  • 你在写 SQL 语句的时候有没有进行过一些优化?
  • 你在什么情况下会建索引?
  • 有一个三种状态的字段,适合建索引吗?
  • 你对雪崩、击穿、穿透是怎么理解的?有什么解决方案?

其他

  • 你最近在学什么?
  • 了解过分布式相关的技术吗?
  • GET 和 POST 的区别是什么?
  • 编程题:写一个多线程程序,四个线程对一个全局 int 变量,2 个加 1,2 个减 1,保证线程安全
  • 编程题:利用 Java 面向对象的思路设计正方形、长方形 、和圆的计算面积的类

2023/3/31(二面)

闲聊
  • 毕业后你对第一份工作的地点、公司规模有什么样的期待呢?
  • 你考察一家公司的发展空间具体是看什么呢?
  • 你觉得现在哪些行业是符合这个时代发展的?
  • 单身 or 恋爱中???
  • 还有在面其他公司的实习吗?
  • 在学校的专业排名
  • 你平时是怎么学习技术的?
  • “武汉有多少个理发店?” 如果你接到这样一个任务,你会怎么去统计?
  • 你本科相比其他研究生的优势在哪里?公司为什么要招你呢?

项目

  • 敏感词过滤算法具体是怎么实现的?
  • 如果在敏感词中要加上类似于 “特朗普在美国南部修了一堵墙” 这种场景的过滤,你会怎么样来做呢?
  • 为什么使用 Kafka?有没有对比过其他类似的中间件?
  • 讲讲你二级缓存是怎么实现的?
  • 为什么考虑用 ES 来做搜索呢?它的使用场景是什么?有没有一些其他的替代方案呢?

MySQL & Redis

  • MySQL 和 Redis 有什么区别呢?它们的使用场景分别是什么?
  • Redis 中的哨兵模式是怎样的?
  • 介绍一下事物的隔离级别
  • 做分页查询时,使用 limit 查第 1 页和第 500 页,有什么区别吗?

Java

  • 讲一讲类加载器中的双亲委派模型是怎么样的?
  • 这些加载器之间是什么关系呢?是继承关系吗?
  • 讲讲 BIO、NIO、AIO

网络

  • 在浏览器中输入 www.taobao.com 到页面显示出来,中间的流程是怎么样的呢?
  • 为什么 TCP 断开连接要进行四次挥手呢?

编程

  • 写一个代码片段,让它跑出 OOM
  • log.txt 文件中读取出 ERROR 格式的日志信息

HR 面(2023/4/4)

  • 闲聊
上次编辑于: