字节后端 一面+二面凉经

部门:产品研发和工程架构部,深圳的教育部分。

提前批简历被捞起来的,攒点经验吧。

7.30一面

项目相关

  • rabbitmq

    • 生产、消费者、exchange、queue关系

    • 消息的顺序性

    • 保证消费

  • mysql

    • 常见引擎,适用场景

    • 索引类型,为什么用B+树

  • Mybatis防sql注入

  • DispatcherServlet执行流程

  • HTTP、HTTPS区别

  • HTTPS请求过程

  • redis

    • 数据类型

    • zset底层

    • 主从复制过程(分第一次和断开连接)

场景:redis单个key命中率100%(不是缓存击穿),如何优化

  • 分布式,主从,多从库分担读压力
  • 服务端用map缓存到内存中

我就答了这两个,面试官好像不太满意,求教别的解决方案

算法:反转从位置 mn 的链表。请使用一趟扫描完成反转。leetCode原题

没问java相关的,部门用go

当天下午就约二面。


8.3 二面

自我介绍

  • 算法:斐波拉契爬楼梯,优化前后时间复杂度(前的没答出来,是2^n^,答了个N!)

  • 计网

    • HTTP的请求方式,GET POST那些
    • HTTP状态码,3xx,4xx
    • HTTP的登录状态(如何判断登录,答了cookie,session,拓展答了分布式session)
  • 分布式CAP含义,redis属于哪种

    有点蒙,当时答了ap。

    答完找了下资料,集群redis是AP没问题,但单机redis是 CP?这里有点疑问,应该是CA?求解答

  • 设计数据库表:

    文件夹管理系统,支持增加,删除,重命名 文件及子文件夹。
    需求:

    1. 按创建时间排序(可指定数量)本文件夹的子文件夹和文件

    2. 删除文件夹


    我的设计方案: 两个表:

    • 文件夹表,(id,name,创建时间,子文件夹id,文件id)
    • 文件表,(id,name,创建时间,所在文件夹id)

    文件表的字段:"所在文件夹id",是用于排序文件

    这样设计肯定很多问题……不过确实是弱项,不会,求解一下设计方案。

  • 算法:

    N个老虎1只羊,老虎吃了羊变羊。老虎会在保证自身存活的前提下,尽量多吃羊。问那一只羊能否存活

    答案:

    n=1,老虎吃羊;(羊死)
    n=2,如果一只老虎吃了羊,它会变成羊被另外一只老虎吃掉,所以羊不会被任何一只老虎吃掉;(羊活)
    n=3,如果一只老虎吃了羊,此时就是两只老虎、一只羊的情况,即n=2,此时变成羊的老虎不会被吃,所以n=3时羊死;
    n=4,任何一只老虎吃了羊会死,同n=3,所以羊活。
    。。。。奇数羊死,偶数羊活。

    题都没读懂……没答出来,感觉偏智力题

总得来说答得不好,基础的也答的有缺陷,设计表尤其答得差。


8.05 收到感谢信了,凉凉

#面经##校招##字节跳动##Java工程师#
全部评论
场景题那个,用jetcache做一个两级缓存怎么样呢
1 回复 分享
发布于 2020-07-31 17:52
热key 拆分一下
点赞 回复 分享
发布于 2020-08-03 15:24
缓存预热可以解决
点赞 回复 分享
发布于 2020-08-01 22:33
校友。我昨天也面了这个部门。。。
点赞 回复 分享
发布于 2020-07-30 21:22
楼主之前面过字节提前批吗
点赞 回复 分享
发布于 2020-07-30 17:17

相关推荐

LemontreeN:有的兄弟有的我今天一天面了五场,4个二面一个hr面
投递字节跳动等公司10个岗位
点赞 评论 收藏
分享
评论
2
27
分享

创作者周榜

更多
牛客网
牛客企业服务