阿里云 电话一面
- self-intro
- 浏览器键入url到渲染的过程
- 如果本地缓存没有域名对应ip的映射,浏览器怎么找到对应的ip
- DNS查询过程
- http连接建立过程
- socket连接,多个客户端可以只用一个端口连接服务端吗(没太理解问题,正向代理?)
- 换个问题:一个客户端发起多个socket连接,其端口是一样的吗?
- 一个客户端发起多个到服务器的socket连接时,通常每个连接都会使用不同的客户端端口。
- 你的多线程是怎么实现的?线程池起了多少个线程?为什么要起这么多线程?
- 我答的起10个线程,说线程池的线程个数与计算机的核数有关,后发现不对,应该是同一时间的并行数与核数有关,线程数与内存有关
- 我答线程数与连接数有关,面试官说你已经用到了IO多路复用,连接数这一点可以解决,线程数应该和连接数无关,和处理任务有关(这里不太理解。。回去复盘)
- 面试官提醒IO操作,因为每个线程要处理写磁盘的操作,所以属于IO密集型,线程等待过程中需要有线程来处理源源不断的请求,应该不止10个
- 线程被阻塞后会自动释放资源?
- 介绍epoll
- 什么是文件描述符,操作系统是怎么知道某一个文件对应磁盘当中的哪个位置的
- 代码题:
- 自己设计结构,给定根目录,要求打印根目录下所有文件(linux tree命令)
- 递归
- 这里注意设计文件结构时应该包括文件名/文件大小/文件类型/文件权限等等信息
- 求出某目录下所有文件大小
- 这里注意目录文件也是文件,也占一定大小
- 其他问题
- 讲讲你算法分析这门课的成绩
- 讲讲你云计算这门课都讲了什么(忘了。。PaaS/SaaS/FaaS)
- kafka和rocketmq区别是什么,为什么rocketmq性能更好,底层是怎么实现的
- 听说过aws吗(amazon web service)
- 你成绩排名多少
- 说说你最近看的一本书
- 反问业务:消息队列中间件,PaaS
全程55min
#软件开发2024笔面经#