首页 > 其他分享 >噢耶!字节后端Offer,拿到了

噢耶!字节后端Offer,拿到了

时间:2023-09-25 15:26:24浏览次数:53  
标签:字节 后端 队列 什么 Offer redis 日志 怎么办

很多同学反馈多搞点面经,说来就来!

今天分享一位拿到字节跳动实习Offer的面经,没错,Java转Go

别问我选Java还是选Go,成年人不做选择题。先搞定一个语言,再学第二语言从来不是难事。

无论学哪个,你要做的事情是先学起来:想都是问题,学才有答案!

面经分享

本文没有按照一面、二面、三面流水账的形式整理。

而是把面试中碰到的问题,按种类划分汇总:算法题、数据结构、操作系统、数据库、缓存、计网、场景题等等,这样对大家应该更有帮助!

一、算法题:

  1. 给定一个字符串abcdabgh,给个字符a,随机返回a下标,比如这个是0 4。要求返回的概率必须一样,空间复杂度要求O1即不能开任何空间存储下标,并且只能遍历一次。

  2. 给定n个骰子,和为k的概率,不能用回溯。

  3. 给一个数字比如234,给个数组比如{2,3,7},找出第一个不大于234的数,比如这个是233,有几种情况我记得是,这里用到了有序表我写的时候。

二、八股文

不全,比较简单的我就没整理了...

数据结构:

  1. 堆和树的区别?应用场景?

  2. 二叉搜索树是什么?

操作系统:

  1. 进程之间的通信方式?写个死锁?怎么解决?

  2. 操作系统内存满了怎么办?如何回收?有什么影响?

  3. 什么是僵尸进程?应该怎么去操作?

  4. 为什么会有线程安全的问题,如何解决?

  5. 说一下乐观锁和悲观锁?说一下CAS?aba问题是什么?如何解决?

MySQL:

  1. 索引构成?(B+树)索引优化?给个sql让判断走索引的情况?

  2. 什么是慢sql,如何查找,如何优化?

  3. 三大日志,我记得好像有个问题是redolog写进去了,但是有个bin log没写进去该怎么办?(具体的我忘了,我没回答好)讲write还有flush区别?redo log刷盘时机?三大日志的执行顺序?

  4. mysql的事务隔离级别?各自解决了什么问题?mvcc的流程

Redis:

  1. 问了zset的底层?为什么不用红黑树?(这是我自己引得,我傻了自己说了一句没用红黑树,用的是跳表)

  2. redis里面的命令行比如setnx和setex 还有zset里面的

  3. redis的key有大小的限制吗?有什么影响?怎么办?

  4. redis的内存淘汰策略?(面试的时候一直想不起来 一直背了半天旁路缓存那些东西 我以为凉了的)

  5. 根据score查member的时间复杂度?反过来根据member查score时间复杂度?

计算机网络:

  1. http常见的方法和状态码有哪些?

  2. 502是什么错误?如何排查问题?

  3. 讲一下反向代理?

场景设计:

  1. 敏感词库的设计,要求增删改查敏感词。敏感词文本匹配,敏感词一万个,文本长度20-10000这样子。

  2. trie树什么的都回答了,开什么几个线程这样子,我也是各种瞎说,后面问我在这里面怎么存储持久化,给出方法,redis里面存储如果宕机了怎么办有个节点?这一块真的虚,我也不知道怎么办,感觉面试官很厉害,我给的方案他好像都否定了,说我的方案一天宕机几分钟怎么可能行?

三:项目和实习

也有一些闲聊没有写进来...

  1. 微信扫码登录流程?后面的原理你了解吗?(准备了很久的Oauth2总算碰到了开心)csrf是什么?怎么解决的?

  2. 项目难点(之前登录日志是同步写入库的 后来为了提升效率加入了队列 先写队列后消费入库 做解耦 但是队列用了同步操作 有一次mq挂了 导致登录服务不可用 这种是不可接受的 记日志不能影响登录 所以将其改为了异步方式)

  3. 订单30分钟取消,延时消息这里(这个是我自己引申的,我包装了一下,我把mq的18个队列讲了一下,也讲了一下kafka的时间轮)

  4. 你实习用的什么语言?go的协程里面出现panic怎么办?defer讲一下?gmp模型了解吗?

总结

本文来自 程序员升职加薪 知识星球一位星友的分享。感谢这位好心人,一定顺利度过试用期哦!

希望对大家有帮助,Let's Go!

标签:字节,后端,队列,什么,Offer,redis,日志,怎么办
From: https://www.cnblogs.com/wangzhongyang/p/17727977.html

相关文章

  • 后端服务之应用预热
    一背景C端服务应用升级和重启,导致耗时瞬时抖动,业务超时,应用监控报警,上游感知明显,导致用户体验变差。二应用升级重启导致抖动的原因1C端服务应用升级和重启的冷启动阶段,它需要重新加载和初始化各种资源,例如数据库连接、缓存数据等,导致耗时瞬时飙升。2应用重启后,本地缓存失......
  • [剑指offer] 其他算法[上]篇
    JZ66构建乘积数组/*暴力*/publicclassJZ66_1{publicstaticint[]multiply(int[]A){int[]res=newint[A.length];Arrays.fill(res,1);for(inti=0;i<A.length;i++){for(intj=0;j<A.len......
  • core文件里的全局变量偏移了16字节
    源代码里面有这个几张表:126staticstructavl_table*l2_addr_tree;127staticstructavl_table*casa_neighbor_table;128staticstructavl_table*casa_ecmp_table;129staticstructavl_table*casa_neighbor6_table;130staticstructavl_table*casa_nh_rout......
  • Mac实现IDEA和nginx前后端联调(新手向)
    前言今天看黑马程序员的javaweb课程,看到前后端联调这一节犯了难。因为老师使用的开发环境是win10,而我用的是Mac,不想装虚拟机,就想着研究一下如何在Mac上实现前后端联调。因为之前只简单学了一下前端三大件,没有系统学过nginx,所以有什么问题请多包涵。前提:获取老师的文件包我们需要......
  • 前端拿到后端数据,不能直接用,还要再处理,合理吗?
    1前言想起很久之前的一个笑话。我有个朋友之前开发过一款App,其中有一个关于消息发送时间的显示的问题,后端认为给一个时间戳,由前端决定到底怎么显示,你显示年月日时分秒还是年月日时分,又或者是刚刚,那是你的事情。2前端不这么认为他们觉得这是后端的事情,凭什么要我们写这个逻辑,......
  • 大文件切片上传+断点续传解决方案-前后端实现
    上传文件大家应该都做过,前端直接把file文件传给后端就ok了,但是大文件这样传就会造成页面假死,体验极差。如果遇到网络不稳定的时候,中途上传失败的话,又要从头开始传,本来文件就大,还慢。所以今天我们用一种新方法-切片上传+断点续传前端实现:页面上很简单,我就放了进度条和一个上传文件......
  • 剑指Offer面试题10:斐波那契数列
    一、题目示例:输入:4返回值:3说明:根据斐波那契数列的定义可知,fib(1)=1,fib(2)=1,fib(3)=fib(3-1)+fib(3-2)=2,fib(4)=fib(4-1)+fib(4-2)=3,所以答案为3。二、题解2.1解法一:迭代相加知识点:动态规划动态规划算法的基本思想是:将待求解的问题分解成若干个相互联系的子问题,先求解子问题,然......
  • 熬过月余终见offer,一份Android面经
    前言最近我一直在牛客刷帖子看到好多对于现在IT环境的负面消息,自己也是找了一个多月Offer一个都没有,又看到这些感觉面试的勇气又少了…这种状态我根本就不知道任何转变,真的是投简历都不想投!就在这样的状态下,朋友说他那边内推有消息了,说待会HR会和我联系。怎么说了,并没有太多惊喜,因......
  • [剑指offer] 树[下]篇
    JZ36二叉搜索树与双向链表⭐1/*中序递归*/2publicclassJZ36_13{4publicstaticTreeNodeConvert(TreeNodepRootOfTree)5{6inOrder(pRootOfTree);7TreeNoderes=pRootOfTree;8while(res!=null&&res.left!......
  • JAVA 后端 记录方法运行时间
     LocalDateTimeldStart=LocalDateTime.now();//记录开始时间//中间是需要计算时间的代码段落LocalDateTimeldEnd=LocalDateTime.now();//记录结束时间Durationdu=Duration.between(ldStart,ldEnd);LongcostSeconds=du.toMillis()/1000;System.out.println("postNurseCo......