虾皮秋招一二面

8.2 15:15一面 约50mins
项目:
1.redis数据结构 在项目中都用到了哪些 怎么使用的--答 使用String数据结构解决的session共享问题。。
session共享是??
介绍zset底层--压缩列表和跳表
介绍跳表--多层有序链表
跳表有双向指针吗?--最底层有双向指针
为什么在最底层设置双向指针?--跳表的高层是单向的,是为了加速查找,最底层是完整的有序链表,存储所有节点,双向在指针支持高效的范围查询(Range Query)和反向遍历

2.redis线程模型

3.RPC和HTTP的区别,已经有HTTP了,还需要有RPC吗?

4.Etcd的一点原理
Etcd里有没有主从复制?--有,使用的是Raft算法
分布式系统的三角(一致性C、可用性A、分区容错性P)
Etcd有高一致性,是牺牲了什么?--CP,牺牲了A,当发生网络分区或节点故障导致无法达成多数派(Quorum)时,Etcd 会拒绝写入(甚至部分读取),系统表现为不可用,直到分区恢复。

八股:
了解C++吗?问了两个C++中的数据结构,我说不了解,面试官说对应java中的hashmap和treemap
讲了一下这两个数据结构
如果要存储海量数据,用这两个数据哪个占内存更多,面试官的意思是由于哈西冲突非常多,所以hashmap多??
好像还有别的,但是忘了。。

手撕:(约20mins)
二分查找(只写函数部分)
LRU,只让讲了一下思路

二面:8.13
点评项目的底层过程
介绍了一下redis,说了一下数据结构
缓存穿透,我回答了四种,面试官问还有吗????

两个手撕:
一个升序数组旋转后,找最小值,使用二分查找和时间复杂度
一个字符串最多有k个不同字符的子串的最大长度

最后又来了两个八股:
什么是线程安全?怎么保证?你实际用过吗?
GC
全部评论
请问是笔试多久后约面的啊
点赞 回复 分享
发布于 08-04 09:43 四川

相关推荐

评论
5
31
分享

创作者周榜

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