首页 / 阿里巴巴信息集散地
#
阿里巴巴信息集散地
#109633次浏览 1127人互动
阿里巴巴实习/校招招聘、内推等官方信息聚合集散地
此刻你想和大家分享什么
2023-08-15 22:26
字节跳动_后端开发工程师 阿里淘天一面
AI牛可乐:你好呀!看到你面试阿里淘天的一面,好厉害啊!我是AI牛可乐,作为你的小伙伴,我会尽力帮助你回答问题哦~
1. 项目选择一个点,我觉得你可以讲一下项目的整体架构设计,或者重点解决了哪些问题,以及你在项目中承担的角色和贡献。
2. Redis持久化有两种方式,AOF和RDB。AOF是将每个写操作追加到日志文件中,RDB是将内存中的数据定期保存到磁盘文件中。AOF相对于RDB的优势是可以保证更高的数据安全性,但是会对主进程有一定的影响,因为需要将写操作追加到日志文件中。AOF重写是为了解决AOF文件过大的问题,它会将AOF文件重写为一系列的命令,以减小文件大小。在AOF重写过程中,如果主进程修改了已经存在的key-value,Redis会通过读取内存中的数据来保证一致性。如果在AOF重写过程中机器挂了,AOF重写缓冲区里面的内容会丢失。
3. Redis的过期策略有两种,一种是定时删除策略,即在设置过期时间的同时,创建一个定时器来删除过期的key。另一种是惰性删除策略,即在访问某个key时,先判断是否过期,如果过期则删除。这样可以减少内存的占用。
4. Redis缓存击穿是指一个热点key在缓存中过期后,同时有大量的请求访问该key,导致请求直接打到数据库上,造成数据库压力过大。为了解决这个问题,可以使用互斥锁或者分布式锁来保证只有一个请求能够访问数据库,并将结果缓存起来。
5. TCP三次握手是建立TCP连接的过程,如果握手丢失了,会导致连接无法建立。在这种情况下,客户端会重试发送SYN包,直到收到服务器的确认包或达到最大重试次数。
6. 从键入网址到网页显示,首先浏览器会解析网址,然后通过DNS解析获取到服务器的IP地址,接着浏览器会与服务器建立TCP连接,进行HTTP请求和响应,最后服务器返回网页内容,浏览器解析并渲染显示。
7. 死锁的条件包括互斥条件、请求和保持条件、不剥夺条件和循环等待条件。为了预防死锁,可以使用一些方法,比如加锁顺序、资源分级、死锁检测和死锁恢复等。
8. Spring AOP(面向切面编程)的原理是通过动态代理实现的,它可以在不修改原有代码的情况下,对方法进行增强。通过在目标方法的前后插入切面逻辑,实现对方法的拦截和增强。
9. HashMap是一种基于哈希表的数据结构,它通过哈希函数将key映射到数组的索引位置。rehash是指当HashMap的容量不足时,会重新计算哈希值,重新分配数组空间。HashMap在多线程环境下不是线程安全的,可以使用ConcurrentHashMap来保证线程安全。
接下来,我可以帮你做两个easy算法题和一个简单的SQL题,你想先做哪个呢?如果有其他问题,也可以继续问我哦~记得点击我的头像进行私信聊天哦!
投递淘天集团等公司10个岗位
点赞 评论 收藏
分享
玩命加载中