小米Java一面面经

时长:1小时10分钟

自我介绍
手撕算法:模拟计算器,输入算数表达式字符串,返回计算结果。
1、ConcurrentHashMap底层实现?
2、BIO、NIO、AIO三者之间的区别?
3、epoll是怎么实现IO多路复用的?
4、知道用户态和内核态的区别吗?为什么要分为两种,NIO为什么比BIO性能好,结合上面两种态来回答?IO操作在操作系统底层是怎样的?(中断、DMA、用户态到内核态的切换,系统调用等...)
5、进程和线程区别?
6、进程通信方式?
7、MQTT优势,为什么物联网普遍采用该协议?(轻量级、QoS消息保证可靠、异步、跨平台、安全...)
8、项目中的MQTT怎么实现的?Netty在其中的作用?
9、rocketmq内部组件有什么?
10、rocketmq保证消费有序,消费者组是如何保证有序消费的,以及不重复消费?(结合分区来回答)
11、rocketmq如何提高吞吐量,例如生产者生产很多消息,消费者组这边要如何消费去平衡消息的堆积,并发消费问题等?
12、tcp和udp区别?
13、http的报文有哪些字段,包括请求报文和响应报文。
14、http请求方式知道哪些?(get、post这些,有什么不同)
15、osi七层模型和tcp/ip模型的区别?
16、如何选择上面这两个模型?
17、osi七层模型有哪些,分别对应tcp/ip模型的哪些层?
18、DNS在哪一层?
19、浏览器输入URL请求时,结合上面的两个模型,到网络层直接,会有哪些协议?(知道多少说多少)
20、docker文件系统了解吗?

面试官很耐心,告诉我下来可以再多看看计网、MQ这些基础,告诉我答得不好的点等等
全部评论
epoll那块怎么回答的,
1 回复 分享
发布于 2023-10-13 22:47 北京
明天面小米也是Java看到你这些问题真的瑟瑟发抖
1 回复 分享
发布于 2023-10-12 15:17 北京
m
1 回复 分享
发布于 2023-10-12 01:24 陕西
模拟计算器括号、优先级都要考虑吗?
1 回复 分享
发布于 2023-10-11 20:28 湖南
这是日常实习还是秋招呀
点赞 回复 分享
发布于 2023-11-06 18:39 北京
佬,八股是根据你项目来的还是随机问的
点赞 回复 分享
发布于 2023-10-12 09:09 山东
我滴妈,计网和操作系统是问的真深啊😢,还是得把这俩门课学扎实😭😭😭😭,25届瑟瑟发抖
点赞 回复 分享
发布于 2023-10-10 16:41 江苏

相关推荐

09-08 21:59
西北大学 Java
1. 这段实习里面哪个项目对你帮助比较大?2. 重构过程中怎么保证安全性的?3. 在重构过程中有遇到哪些问题吗?兼容性问题?bug?4. 之后如果要做这方面重构有什么建议或者理解?5. 上线后怎么去评估功能是否完善?6. 物联网的课程设置有什么特点?与计科有什么区别?7. 编译原理?汇编语言?8. 对嵌入式编程有什么理解?与正常的企业项目有什么区别?9. 用在服务器中的linux和用在嵌入式系统的linux有什么区别?10. 为什么嵌入式大部分用C和C++?11. 嵌入式的内存、CPU都有多大?12. 讲下面向对象的特性13.  在开发中觉得这些特性重要吗?14. 反射的机制知道吗?15. 一个java后端项目分层一般怎么做?16. 了解哪些数据库产品?17. 数据库设计表有什么原则?18. 联合索引设计有什么注意事项?19. 什么时候数据库需要分库分表?20. 项目中用过分库分表吗?21. 项目中用了哪些RPC组件?了解哪些?22. RPC组件一般网络中都会使用NIO模型,说说你了解的BIO、NIO模型23. NIO的特性基于操作系统方面有哪些了解?24. 多路IO复用对应操作系统的哪部分?25. epoll有两种模式,哪两种?有什么作用?26. 现在HTTP服务是基于NIO还是BIO?27. HTTP的网络方面的能力有什么?比如指定一个组件的能力?指定并发量?28. HTTP请求处理网络IO的能力?29. 现在我发一个HTTP请求给你,这个网络请求传输按分层来讲会怎么传输?封装和拆包的过程30. 以太包到哪就结束了?然后拆包去传输?31. 整个传输过程中每次拆包都会要CPU参与吗?32. HDFS和K8S有接触吗?消息队列有用到吗?33. 算法:找到链表倒数第n个节点
点赞 评论 收藏
分享
09-19 15:57
南开大学 Java
📍面试公司:字节🕐面试时间:9月19💻面试岗位:后端❓面试问题:只说我觉得稍微有难度的,基础的不写了一.八股1.ARP欺骗是什么(先问的我输入一个网址到回显的过程,我中途提到了arp会去找mac地址,然后就问我ARP欺骗是什么,凭感觉说了下)2.消息队列怎么保证三个层面可靠性,有序性,不丢失?3.消息队列有很多个,如何取舍选择哪个呢?4.详细说说堆这个数据结构5.进程间通信方式?各自的优缺点。二.场景题你有一台机器,很小的内存,现在你有一个很大的日志,日志里面只记录了IP地址,实现一个算法找出访问次数最大的IP(我说用hash,面试官说ip都装不下,你map里又要记录ip又要记录次数,能装下吗?后面说分治)三.项目1.为什么用http和mq通信?为什么不用RPC?2.消息队列如何保证不重复消费?存在redis里的话用什么数据结构?什么时候移除?3.这个项目有哪些表?追问订单信息这个表构建索引了吗?应该怎么对这个表构建索引?哪些字段加索引?4.讲讲微服务间如果通信?讲讲锁单/结算/退单流程?5.讲讲动态配置中心怎么实现的?限流器怎么实现的,为什么用本地缓存,能用redis吗,redis怎么实现限流器?四.手撕删除倒数第n个链表节点(面试官有点皮,故意让我输入需要特判的情况,比如n大于链表长度了,比如删除了链表的头节点)🙌面试感想:还行,百分之95都答上了,继续加油!!!
查看12道真题和解析
点赞 评论 收藏
分享
评论
15
101
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务