首页 > 笔经面经 > 字节跳动-抖音实习生-一面面经

字节跳动-抖音实习生-一面面经 内部员工回复

头像
Crj.
编辑于 2021-02-26 11:46:37 APP内打开
赞 11 | 收藏 95 | 回复14 | 浏览4566

答案都是下来之后搜了搜,可能也不是很对,大家凑活看看问题,有什么错误,也可以指出一下,也可以交流交流

感兴趣的同学,可以直接投递我当前的部门,直接和hr交流,有什么问题也可以直接问hr,大家踊跃尝试哈。https://www.nowcoder.com/discuss/590615?source_id=profile_create_nctrack&channel=-1

1. 秒杀场景的特点,怎么解决?高并发,通过redis缓存解决
2. redis怎么实现分布式锁,防止超买?redis操作是原子的,DECR操作原子操作
3. DECR怎么实现多线程不出错?CAS原子操作
4. 分布一致性问题了解过么?集群数据怎么保证统一:集群主从模式,主节点读,从节点写,增量复制全量复制
5. 新的服务器加入集群会做什么?复制数据,投票选举主节点
6. 流量激增怎么办?买服务器(流量少了就浪费了)?
7. 数据从数据库保存到redis,从redis同步到DB怎么保证数据安全?事物?
8. redis怎么保证高效率?
a. redis的瓶颈在内存和IO速度,而不是CPU
b. 单线程的高并发问题,基于内存,少了上下文切换(不用加锁解锁),多路复用没答上来
9. redis更新多线程后,怎么变快的?多线程接受用户请求
a. 多线程处理IO请求,提高CPU利用率,命令执行仍然是单线程
10. IO多路复用了解过么?BIO、NIO、AIO同步阻塞问题
a. Epoll 效率高于 poll 和 select ,只需要轮训就绪链表,而另外两个需要轮训所有集合
b. 同步/异步:IO过程中线程是否等待
c. 阻塞/非阻塞:系统调用后,等待操作系统执行完毕,才返回用户进程
11. 操作系统记得么?用户态内核态区别,什么情况进入内核态,进入内核态进程为所欲为?
a. 三种进入内核态方式:系统调用;异常;外围设备中断
b. 用户态级别最低Ring3,切换到内核态后升级为Ring0级别,进程使用自己的内核栈
c. 执行系统调用,特定方法,限制访问内核数据
12. DB的索引,什么数据结构可以代替B+树?没答上来,跳表
13. 跳表的优点是什么?
a. 查找效率高,原始链表查找O(n),增加索引空间换时间,多级链表减少查找时间O(logn)
b. 插入删除效率也很高
14. 事物的隔离级别,带来的问题是什么?
15. DB分库分表原理?
16. 怎么解决幻读,加锁的方式是什么,效率问题?间隙锁范围,next-key lock,左开右闭,会对下一个索引值加锁,所以就是当前行的前后范围加锁
17. 网络编程了解么?TCP怎么保证传输安全?
18. Java,ConcurrentHashMap,怎么保证线程安全,扩容的时候怎么保证线程安全?
19. 扩容机制,重定位需要重新rehash吗?怎么减少碰撞?
四数之和,时间复杂度O(n2)

更多模拟面试

14条回帖

回帖
加载中...
话题 回帖

推荐话题

相关热帖

笔经面经近期热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐