小米自动驾驶后端开发 日常实习一面(过)
-
自我介绍
-
项目介绍(用到redis,mysql,mq,mongoDB),项目的数据量,并发量,不同数据库都存的什么内容,为什么这么安排?
-
rabbitMQ的作用,为什么你的项目选了这个mq而不用rocketMQ和kafka,这三个哪些可以使用优先级队列,如何确保高并发量不出问题
-
mongoDB存储数据是关系型的数据吗,可以进行管理吗?存储图片是使用什么形式,二进制码还是软链接之类的?后端调用图片是怎么传输数据呢?为什么不直接使用一个文件夹存储而是使用mongoDB呢?
-
mysql如何加快检索速度(索引,分库分表)?讲一讲MySQL存储过程,什么情况适合使用索引,添加索引的注意事项,如果是对手机尾号后四位进行快速检索有什么办法?
-
下面语句如何设置索引可以加快检索速度
select a,b from table where c=20 and d<10 or e>5 group by f order by g limit 10,5;
-
讲讲JWT的存储结构,能实现的功能,项目中的登录验证流程,说一说加密算法(RSA,Base64)怎么实现的加密,介绍一下非对称加密和对称加密,两种加密方式的原理分别是什么
-
如果服务器收到第一次登录的用户名和密码怎么处理呢?密码是直接原始数据存储到数据库中?如果直接存会有什么问题?什么是sql注入?怎么避免sql注入呢?
-
redis怎么保证和数据库的一致性,为什么要先更改数据库再删除缓存,举一个例子验证一下
-
算法题: 有效的括号leetcode 20, 三数之和leetcode 15
- 反问环节:进去以后要转语言python或者C++(可我面的是java啊,奇怪),面试官帮我约了二面,说今天是按照二面的难度问的,下次面试会简单走个过场就好,基本两轮面试就可以收到offer。(虽然我不想去,但还是很感谢面试官一直提醒我一些忘记的点),面试用了一个半小时,够煎熬的