哈罗出行电话一面 2021-12-1 52分钟

问题:

Java基础
  • java集合的数据结构,你使用的了解。
  • hashMap的底层数据结构是怎样的?
  • hashmap构建的时候有什么参数,比如构造因子,构造因子起的什么作用,扩容因子。
  • 怎么解决hash冲突?
  • 往hashmap填充很多数据比如几百万的数据量,你觉得会发生什么情况?我们在业务当中应当注意什么。
  • 红黑树有什么特性,为什么要使用红黑树替换链表。
  • 往红黑树插入数据的时间复杂度是多少。
  • hashtable和concurrenthashmap说说你的了解。
  • Node加锁和分段加锁的区别,给Node加锁有什么好处
多线程
  • volatile的作用有哪些。
  • volatile是线程安全的吗?
  • synchronized的加锁原理。
  • 轻量级锁你的理解。
  • reentrendtlock原理是什么。
  • 造成死锁的原因有哪些?怎么避免死锁?
  • 在实际应用编程当中如何避免出现死锁的情况。
  • synchronized 和 ReentrantLock 区别是什么?
  • 加锁为什么一定要加操作时间?
框架
  • MyBatis的工作原理是什么。有阅读过源码?用到了什么设计模式。
  • SpringBoot的核心工作原理是什么?或者说SpringBoot主要解决了什么问题?
数据库
  • MySQL分页查询,第一页和最后一页查询有什么区别
  • 聚族索引说一说
  • 主键生成策略是什么
  • uuid适合做主键吗?
  • 自增的目的是什么?
  • MySQL的隔离级别
  • Spring的事务传播机制有了解过吗?
  • 你在哪些项目中使用过Redis。
  • 存流水号的目的是什么,为什么不适用数据库呢?为什么利用redis快的特性,你有多大的数据量。10几万的数据量为什么不适用数据库呢?万一他丢失了流水号呢?
  • 你了解redis的哪一块呢?(Redis的持久化)
  • 10m大小的String,存储成文本形式会有什么问题?
  • Redis分布式锁讲讲
  • 哨兵模式的原理是什么
项目
  • 你在项目中扮演的角色,干了些什么
  • 你是如何做幂等校验的。
  • 你了解哪些kafka特性。(消费者组,答得乱七八糟)
  • 每日交易数据核对,是怎么核对的。(两个字段合成一个字段)比对两个数据源是吧?怎么去比对呢?怎么去注重他的效率?
  • 给你一个场景,两张一亿数据量的表,只有两个字段,你要去比较两张表,怎么比较效率可以更高。这么的数据量就不能使用数据库去比较了,要使用离线平台去比较。bitmap有了解过吗?
  • 你使用过Hadoop离线平台,主要用来是做什么的。
网络
  • TCP三次握手介绍一下。(没有条理和逻辑,堪称糟糕)
  • 为什么需要四次挥手才能终端连接。
  • Http的head的设置
  • Http的get,post区别
  • Https有了解吗?常见的加密算法有哪些?
  • 怎么辨别请求的来源方?
  • sessionid,cookie可以伪造的,如何防止伪造。
反问?

我是社招,为什么邮件是校招。
技术栈 开发加测试总共是1400多人。互联网公司,SSM,关注高可用。

复盘:

往hashmap填充很多数据比如几百万的数据量,你觉得会发生什么情况?我们在业务当中应当注意什么。

  • 首先考虑存储这么多数据,内存有没有足够的空间存储,会不会引发虚拟机管理的空间溢出。
  • hashmap集合的初始容量是16,当使用量超过加载因子时,会触发扩容。加载因子默认值是0.75。hashmap扩容会涉及拷贝原有的键值对,重新hash等操作,会影响集合的正常使用。如果要插入百万数据,一定要提前规划好hashmap的集合大小,避免扩容情况的发生。

给你一个场景,两张一亿数据量的表,只有两个字段,你要去比较两张表,怎么比较效率可以更高。这么的数据量就不能使用数据库去比较了,要使用离线平台去比较。bitmap有了解过吗?

bitmap
https://blog.csdn.net/rlnLo2pNEfx9c/article/details/84207497?
bitmap原理: 原本是用一个字节32位表示一个整数,现在使用一个位表示一个数,相比于原来缩小了32倍。它是用一位表示一个数是不是存在的。
适用场景: 判断一个数是不是在一个海量数据集中存在。
实现过程: 原数据量是N,建一个int[N/32+1] bm的数组。遍历整个数据量,对数做整除32得到数组得下标,得知应该存放在哪个数组位置下。与做32的求余运算,得知这个数在这个位置下的哪一位。
写入数据是把这个数对应的位变成1。判断是否存在是看这个数对应的位是不是1。

猜你喜欢

转载自blog.csdn.net/weixin_43260719/article/details/121664796