一年工作经验社招面经

字节跳动


  • zset 延时队列怎么实现的
  • redis 数据结构有哪些?分别怎么实现的?
  • binlog 日志和 redolog 日志清楚吗? 说了两个日志的作用以及两阶段提交
  • C++ 的动态多态怎么实现的?
  • C++ 的构造函数可以是虚函数吗?
  • 让你设计一个限流的系统怎么做? 令牌桶
  • 让你设计一个延时任务系统怎么做 说了两个方案,一个是使用 redis 的 ZSET 来实现,考虑分片来抗高并发,使用 redis 的持久化来实现落地,使用 redis 的哨兵实现故障转移。 一个是使用时间轮的方法。

Shopee

  • innodb 与myisam 的区别?
  • mysql 的索引模型
  • redis 持久化有哪几种方式,怎么选?
  • redis 主从同步是怎样的过程?
  • Kafka 选主怎么做的?
  • mysql 有那些存储引擎,有哪些区别
  • mysql 索引在什么情况下会失效
  • mysql 主从同步怎么搞的?分哪几个过程?如果有一台新机器要加到从机里,怎么个过程。
  • 乐观锁与悲观锁的区别?
  • binlog 日志是 master 推的还是 salve 来拉的?

腾讯

  • 问项目
  • 服务发现是怎么实现的
  • 熔断是怎么实现的
  • id生成器怎么实现的,如何实现全局递增
  • redis如何实现高可用
  • 负载均衡算法有哪些
  • 协程和线程的区别
  • 进程间通讯方法
  • 背包问题
  • 贝叶斯的概率学原理





#Shopee##社招##腾讯##字节跳动##面经##C++工程师#
全部评论
感谢楼主的分享,感觉有些难度,19级来强答一波(闲得慌) zset 实现延时队列可以以时间戳作为score存入zset,zrange --withscore 取出判断是否到了执行时间,到了则执行然后删除 string、list、set、zset、hash这五种基本数据结构,string底层是数组,list底层是链表,hash和set的底层应该都是hashmap,zset应该是跳跃表(但是跳跃表具体的结构已经忘了) 只清楚binlog记录了改变数据的ddl和dml语句,可以用来数据恢复和主从同步,redolog不清楚 c++ 不会 c++ 不会 令牌桶 简单的延时队列zset可以满足要求,时间轮算法不了解,复杂的话应该要上rabbitMQ这种专业的队列解决 innodb 和 myisam 最大的区别是前者支持事务而后者不支持,然后innodb是行锁(只有用到索引情况下是行锁,否则表锁),myisam是表锁,其它还有些差别忘了,现在常用的是innodb 索引模型?是说索引的底层数据结构吗,如果是的话有两种,一种是B+tree,一种是hash 两种,一种是append only file(aof),一种是快照,前者会随着时间的推移持久化文件会越来越大,持久化时间也会越来越长(虽然提供了持久化日志优化重写配置),而后者相对前者所需时间少,但比前者丢数据的概率要大,redis4.0还是5.0提供两种方式混用的配置 sync信号然后执行快照命令啥的,记不起了 不知道 常用的innodb,myisam,memory,innodb和myisam上面说过了,memory数据在内存中,查询速度最快,但是数据安全性和数据量级支撑要小一些 这个情况就比较多了,一般都喜欢问数据索引的最左原则,like如果以%开头也会失效,字符串类型要用引号引起来等等 不知道 悲观锁是直接把数据锁起来直至改进程完成操作(for update),乐观锁是自己维护一个版本号来完成,乐观锁适合读多写少的场景 不太清楚,应该是master推? 服务发现是怎么实现的?是指基于dns的服务发现还是基于etcd、consul的注册中心吗 不知道 redis集群? 轮询、随机、加权轮询 协程相对线程更加轻量级,也被称为用户态线程,例如go创建一个协程只需要2kb内存 信号、管道、共享内存 以上感觉自己的理解还是有点浅,另外宇宙条不考算法吗(逃),想知道lz的情况怎么样,如有回答不对的也可以纠正,祝lz面试顺利~
5 回复 分享
发布于 2019-11-23 21:38
问下楼主这是什么方向的,面的什么岗位。。我大部分都不会我好慌啊。。
1 回复 分享
发布于 2019-12-04 11:00
顶一波
1 回复 分享
发布于 2019-11-23 21:52
刷leetcode不
点赞 回复 分享
发布于 2021-11-25 15:47
楼主 原工作单位 方便透露么?
点赞 回复 分享
发布于 2019-11-24 02:01

相关推荐

不愿透露姓名的神秘牛友
05-29 22:21
Offer1:小马智行,深圳,测试开发工程师,17.0k*16.0,Offer2:追觅科技,深圳,嵌入式工程师,18.0k*15.0,
嵌软狗都不学:各位base深圳的同事,作为也是并肩作战的一员,今天想站在管理视角,和大家开诚布公地聊一聊:从近几个月的上下班数据对比看来,我们发现一个明显的差异:深圳同事的在岗时间普遍比苏州同事短。很多深圳同事早上9点之后才到公司,晚上不到 20 点就下班了;而总部那边,20点半甚至 22 点后还有不少同事在办公室忙碌,特别是研发团队,加班更是常态。相信去过苏州的同事,对这种场景都不陌生。我很好奇,这是因为苏州工作任务太重还是咱们深圳同事效率真的高到能在更短时间内完成工作?MOVA在深圳成立分公司是为了吸引更优秀的人才贡献更多更高质的价值,公司管理层给我反馈的是深圳招到的多是行业的专家大拿,大部分都是薪资比苏州高的,而且我们办公的租金等也远高于苏州的..MOVA虽脱胎于强壮的集团母体不久,各业务板块尚未实现全面盈利,虽说公司管理层目光长远,不纠结当下的人才投入,但行业内的普遍标准是,员工创造的价值要达到公司雇佣成本的 15 倍以上。大家不妨自我审视一下,自己是否达到了这个标准?如果是抱着划水、按时打卡走人拿毛爷爷的心态那不适合来MOVA,那样过下去不但自己过得尴尬也会影响MOVA这个大船的攻城略地的速度.我并非鼓励大家盲目加班,而是倡导高效工作,拒绝无效忙碌,不要让项目进度因低效受影响,也别把精力浪费在和苏州同事拼打卡时长上,提倡更高的人效比;考虑到两地地域和交通差异,相信大家会找最适合自己发挥的工作方式(比如按时下班后1小时到家晚饭后继续未竟工作等..)大家在遵守公司规章的情况下尽情地体现自己的能力价值,为MOV!和深圳公司争光我们在这边才能更安心更有信心的工作下去;请客BU长、名部门长、项目管理和各业务单元负责人,全面梳理团队情况,及时评估成员工作负荷与成果质量,坚决清退划水害虫痕疫,践行公司价值观,相互监督,防止管理漏洞及渎职。感谢人家的理解,也请人家多担待我的直言不讳……
点赞 评论 收藏
分享
评论
10
123
分享

创作者周榜

更多
牛客网
牛客企业服务