写在最前:非科班渣硕去年转码一年,不是什么大佬,纯小白(go语言开发)。

一面(大概70min)

  • 首先是自我介绍。(比较传统,就是描述下自己的技术栈)
  • 线程和进程的关系。
  • 线程之间如何进行通信。
  • 死锁发生的条件。
  • 简述go语言GMP调度模型。
  • 简单的问了下go语言的引用类型有什么。
  • 数据库ACID原则,分别代表什么意思,分别举个例子。
  • 为什么Mysql默认是可重复读,如何实现的。
  • 提交读,如何实现的。
  • Mysql 索引的分类,聚簇索引与非聚簇索引区别
  • 谈到了锁,然后写了两个情景题,更新一条记录时,需不需要加锁,此时有一个事务需要插入一条记录是否成功。
  • 谈谈MVCC。
  • 计算机网络三次握手,四次挥手。
  • syn攻击,为什么是四次挥手不是三次挥手。
  • 进行了算法题:树的层序遍历。

反问:

还有一些题目有点忘记了,但是总体难度不高,面试官会引导你,一步一步深入。(下午五点面的,晚上七点半邮件约二面)

二面(大概60min)

  • 上来也是先自我介绍。(楼主以为二面会问很多项目,结果全程都是基础,并且越问越深)
  • 问除go之外还会什么语言,大学学过Java(早忘了),问go和java的区别,并且说是开发题,让我想好在回答。
  • go语言的GMP模型,全局队列中的G会不会饥饿,为什么?P的数量是多少?能修改吗?M的数量是多少?
  • P和M的数量一定是1:1吗?如果一个G阻塞了会怎么样?
  • 讲一讲GC的原理,三色标记法?还懂其他的GC原理吗?
  • 逃逸分析说下?为什么要逃逸分析?如何避免逃逸
  • 并发控制的方法?chan、sync包
  • chan的相关问题,如关闭一个已关闭的chan会如何,有缓存和没缓存的区别是什么?等等。。。
  • Map的底层?查询的时间复杂度多少?hashmap如何进行扩容?发生哈希碰撞如何解决?将链表改成红黑树?
  • 红黑树与AVL比较
  • Mysql索引讲一下,为什么B+树更好?B+树与差别在哪?
  • 用B树查询时候如何遍历?前序?层序?为什么
  • 查询优化?explain,有什么内容?
  • 计算机网络:TCP IP 有什么区别,作用是什么?
  • TCP 和UDP 的区别。
  • 四次挥手细节,time_wait 的状态 为什么2MLS?
  • 大量处于Close wait 是什么场景,如何解决?
  • 时间不是很多了,进行算法:连续子序列的最大和。

  • 反问

总的面试体验是很好的,都会在你不懂的地方引导你,让你思考。

本文由 GOLANG ROADMAP 发布!

【第十三期】B站后端开发实习生一、二面经的更多相关文章

  1. 今日头条高级后端开发实习生三轮技术面+HR面 面经

    二面结束后已经意识模糊,好多问过的东西都忘了,而且有一些基础知识就不在这写了,大部分公司都问的差不多... 一面(2018/03/27,11:00~11:50) 1:自我介绍 2:简单说说你这个项目吧 ...

  2. 字节跳动后端开发实习生面试(Python)

    一面: 1.自我介绍. 2.介绍“工大小美”项目相关. 3.Python中的GIL(全局解释器锁),以及哪种情况下使用python的多线程性能有较大的提升. 4.项目中用到了SQLite数据库,如果有 ...

  3. 从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 十四 ║ VUE 计划书 & 我的前后端开发简史

    ---新内容开始--- 番外 大家周一好呀,又是元气满满的一个周一呀!感谢大家在周一这个着急改Bug的黄金时期,抽出时间来看我的博文哈哈哈,时间真快,已经到第十四篇博文了,也很顺顺(跌跌)利利 (撞撞 ...

  4. Java后端开发书架

    本人摘录于江南白衣文章,文章地址:http://calvin1978.blogcn.com/articles/javabookshelf.html 书架主要针对Java后端开发. 3.0版把一些后来买 ...

  5. 微信小程序周报(第十三期)-极乐商店(store.dreawer.com)出品

    重要:极乐商店域名变更:wxapp.dreawer.com/变更为store.dreawer.com/ 每周一笑 当年刚学打篮球的时候,疯狂地迷恋上了乔丹,然后迷恋上了NIKE,更熟记了NIKE的那句 ...

  6. Python后端开发要求

    关于Python后端开发要求 一.对Python有兴趣,熟悉Python(标准库) 最好阅读过源码 了解Python的优化(熟悉pypy更佳) 二.至少至少一门语言(不说"精通") ...

  7. Uix Kit 快速建站前端开发套件-工具箱

    这个产品维护已经有一年了(由于业务需求不同,目前没有做中文版,产品本身是针对国外网站),自己本身是做UI出生,开发只是业余爱好,仅仅作为平时工作的需要.杂七杂八会一些前后端开发.并非职业码农! 我是一 ...

  8. 前端到后台ThinkPHP开发整站--php开发案例

    前端到后台ThinkPHP开发整站--php开发案例 总结 还是需要做几个案例,一天一个为佳,那样才能做得快. 从需求分析着手,任务体系要构建好,这样才能非常高效. 转自: 前端到后台ThinkPHP ...

  9. java开发实习生面试经历

     这是我第一次写博客,以前都是查看别人的博客分享学习技术,转眼间我也成为其中一员.从一位初学者到现在的开发实习生,不断前进着,跟随时代的脚步在程序的海洋里漂泊,也意识到自己的各种不足,但我还年轻,头还 ...

随机推荐

  1. 前后端java+vue 实现rsa 加解密与摘要签名算法

    RSA 加密.解密.签名.验签.摘要,前后端java+vue联调测试通过 直接上代码 // 注意:加密密文与签名都是唯一的,不会变化.// 注意:vue 端密钥都要带pem格式.java 不要带pem ...

  2. Java初学者作业——定义客户类(Customer),客户类的属性包括:姓名、年龄、电话、余额、账号和密码;方法包括:付款。

    返回本章节 返回作业目录 需求说明: 定义客户类(Customer),客户类的属性包括:姓名.年龄.电话.余额.账号和密码:方法包括:付款. 实现思路: 定义 Customer 类,并添加姓名.余额. ...

  3. 使用JavaScript 中的Math对象和勾股定理公式,计算鼠标的位置与页面图片中心点的距离,根据距离对页面上的图片进行放大或缩小处理。距离远时图片放大,距离近时图片缩小

    查看本章节 查看作业目录 需求说明: 使用JavaScript 中的Math对象和勾股定理公式,计算鼠标的位置与页面图片中心点的距离,根据距离对页面上的图片进行放大或缩小处理.距离远时图片放大,距离近 ...

  4. .net core使用rabbitmq消息队列 (二)

    之前有写过.net core集成使用rabbitmq的博文,见.net core使用rabbitmq消息队列,但是里面的使用很简单,而且还有几个bug,想改下,但是后来想了想,还是算了,之前使用的是. ...

  5. Linux中常用的监控性能的命令(sar、mpstat,vmstat, iostat,)详解

    Linux中常用的监控性能的命令有: sar:能查看CPU的平均信息,还能查看指定CPU的信息.与mpstat相比,sar能查看CPU历史信息 mpstat:能查看所有CPU的平均信息,还能查看指定C ...

  6. centos7 安装jdk 脚本

    下载安装包 链接:https://pan.baidu.com/s/10-U54WwoEaCC9Afj58owJA 提取码:jdk8 写如脚本 vi ***.sh #!/bin/bash #instal ...

  7. Python操作数据库实战

    pymysql # -*- coding: utf-8 -*- """ @Datetime: 2018/12/26 @Author: Zhang Yafei " ...

  8. Linux系统管理学习实训任务书

    1.<Linux系统管理实训任务一之搭建实验基础环境> https://www.toutiao.com/i6763578305091207694/ 2.<Linux系统管理实训任务一 ...

  9. uniapp 判断 IOS和Android的GPS是否开启并设置启动

    checkOpenGPSServiceByAndroidIOS() { let system = uni.getSystemInfoSync(); // 获取系统信息 console.log(syst ...

  10. JPA与hibernate-------JPA01

    ORM概述 ORM(Object-Relational Mapping) 表示对象关系映射.在面向对象的软件开发中,通过ORM,就可以把对象映射到关系型数据库中.只要有一套程序能够做到建立对象与数据库 ...