理想今年校招薪资,有点猛。。。

一线城市由于限车油牌,很多我身边的朋友,买的第一辆车都是电车,基本上人均特斯拉。国内也有很多优秀的新能源车企,理想、小鹏、比亚迪、蔚来等等,最近小米也入局这个赛道。

这些新能源车企中,发现理想的校招薪资特别高,不少拿到理想汽车开发岗 offer 的同学跟我反馈开到了 30-35k x 14(总包 40-50w),比互联网大厂都多很多,问我要不要接?

图片

算法岗更是离谱,都接近 40k 了(总包 55w+)。

图片

图片

看了下理想的财报才知道,原来理想汽车 2023 的销售非常好,所以在开发岗位上扩招了很多,同时给校招生开的薪资非常的给力。

话说回来,理想开这么高薪资,面试难度如何呢?

之前分享了很多互联网公司后端面经,这次给大家分享一位同学面试理想汽车的Java 后端面经,这个面经还是比较经典,基本后端的知识都问了遍。

我也把问到的知识点,罗列了一下

  • Java:线程池、垃圾回收、juc、spring aop

  • MySQL:索引失效

  • Redis:缓存三兄弟、布隆过滤器

  • Kafka:topic、分区、消费线程的关系

  • 操作系统:线程间通信、socket 编程

  • 网络:访问网站到显示的全流程

MySQL

索引失效的场景知道哪些?

对索引使用左或者左右模糊匹配,会索引失效

当我们使用左或者左右模糊匹配的时候,也就是 like %xx 或者 like %xx% 这两种方式都会造成索引失效。

比如下面的 like 语句,查询 name 后缀为「林」的用户,执行计划中的 type=ALL 就代表了全表扫描,而没有走索引。

// name 字段为二级索引
select * from t_user where name like '%林';

图片

对索引使用函数,会索引失效

有时候我们会用一些 MySQL 自带的函数来得到我们想要的结果,这时候要注意了,如果查询条件中对索引字段使用函数,就会导致索引失效。

比如下面这条语句查询条件中对 name 字段使用了 LENGTH 函数,执行计划中的 type=ALL,代表了全表扫描:

// name 为二级索引
select * from t_user where length(name)=6;

图片

对索引进行表达式计算,会索引失效

在查询条件中对索引进行表达式计算,也是无法走索引的。

比如,下面这条查询语句,执行计划中 type = ALL,说明是通过全表扫描的方式查询数据的:

explain select * from t_user where id + 1 = 10;

对索引隐式类型转换,会索引失效

如果索引字段是字符串类型,但是在条件查询中,输入的参数是整型的话,你会在执行计划的结果发现这条语句会走全表扫描。

我在原本的 t_user 表增加了 phone 字段,是二级索引且类型是 varchar。

图片

图片

然后我在条件查询中,用整型作为输入参数,此时执行计划中 type = ALL,所以是通过全表扫描来查询数据的。

select * from t_user where phone = 1300000001;

图片

这是因为 phone 字段为字符串,所以 MySQL 要会自动把字符串转为数字,所以这条语句相当于:

select * from t_user where CAST(phone AS signed int) = 1300000001;

可以看到,CAST 函数是作用在了 phone 字段,而 phone 字段是索引,也就是对索引使用了函数!而前面我们也说了,对索引使用函数是会导致索引失效的

联合索引非最左匹配,会索引失效

联合索引要能正确使用需要遵循最左匹配原则,也就是按照最左优先的方式进行索引的匹配。

比如,如果创建了一个 (a, b, c) 联合索引,如果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值