好未来-golang一面-技术面-9月7号-硬核

img

  • 一面总时长1小时15分钟
  • 硬核面经
  • 真的面麻了,这就是大厂的压迫感吗
  • 真的求过呀,给孩子一个机会吧

  1. 自我介绍
  2. 为什么频繁的更换实习?寒假一个、暑假一个
  3. go a. GMP ⅰ. 简单讲解一下 ⅱ. 本地队列的数量多少个 ⅲ. golang是否支持抢占式调度?
    1. 哪几种场景会进行抢占式调度? a. 怎么保持cpu一直不被协程占用的呢,满足什么条件会退出呢?通过什么方式来进行切换的? ⅳ. g0线程(协程)和m0线程一般都担当什么职责? b. 怎么保持全部协程执行完毕,主协程再退出? c. make和new的区别? d. 进程、线程、协程之间的区别? ⅰ. 为什么线程的上下文切换比进程快很多? ⅱ. 线程的资源分配到哪里? ⅲ. 线程的资源是每个线程独享的吗、还是共享的? e. GMP中本地队列有256个,一个G绑定一个P的时候,跟它的M不是配对的嘛?当他们都绑定之后,在本地最多可以执行多少个g?可以说在p中最多可以存储多少个g来执行?一个p中最多可以存储多少个g?肯定是高于256个,至于多几个,多在什么地方知道吗?本地存储到多少个队列的时候会全局队列里放? f. 当我在执行本地队列里的goroutine的时候,比如说本地队列的256是满的,这个时候我去输出我执行的goroutine,他是全部从本地队列去拿还是会夹杂着全局队列?(限定一下,当我在执行的时候,把goMaxProxy限定为1,打300个goroutine进去,输出的时候会输出到全局队列吗?前256会有全局队列吗) g. GC ⅰ. 说一下GC ⅱ. JAVA的GC用的什么算法 ⅲ. GC在哪几种场景下会触发?
  4. 计网 a. http状态码 ⅰ. 4xx
    1. 403、404、499 ⅱ. 5xx
    2. 502、504、
    3. 502、504的区别 b. TCP ⅰ. TCP是怎么保持长链接的?如果用TCP做长链,怎么保持? ⅱ. 长链和短链有什么区别?
    4. tcp的探活(心跳)是多长时间?
  5. go-zero a. 就是我们公司开源的,万俊峰开源的,好未来的 b. 虽然是我们内部的,但是我们不用了 c. 万俊峰今年刚从我们公司离职了,之前是小黑板业务的,后来双减之后小黑板业务停摆,就离职了
  6. redis a. 哪些数据结构 b. set、zest的底层数据结构 ⅰ. 简述一下跳表
    1. 在redis中最多向上建多少索引
    2. 在向上建冗余层的时候怎么样决定向上是否还有一层,是用什么算法的来决定的?他是多层索引,我这个数据页向上有几层索引是怎么来决定的? c. 集合或者有序集合什么场景用的比较多? ⅰ. 集合类型比较典型的使用场景是标签(tag).例如一个用户可能对音乐感兴趣,另一个用户对新闻感兴趣,这些想去点就是标签.有了这些数据就可以获得喜欢同一个标签的人,以及用户的共同喜好的标签,这些数据对于用户体验来说比较重要. d. 持久化有几种方式 ⅰ. 区别? e. 当redis的内存满了之后会怎么样? f. redis有几种场景会删除他存储的数据?
  7. mysql a. 事务特性 ⅰ. ACID怎么实现的? b. 事务隔离机制有几种?默认的是什么? ⅰ. 幻读出现在哪种隔离级别?会在哪种隔离级别中出现? c. 日志 ⅰ. 有几种?我只说出三种,第四种是真没听过 d. 索引 ⅰ. 有几种索引? ⅱ. 聚簇索引与非聚簇索引的区别? ⅲ. 覆盖索引是什么场景下产生的? ⅳ. 合并索引(merge index)是在什么场景下产生的?这个在项目中是经常使用的 ⅴ. 建索引有什么规范、规则 ⅵ. like能用到索引吗? ⅶ. 怎么确定哪些能走到索引哪些不能走到索引?应该怎样建索引?建索引的规则、规范?
  8. 项目 a. 点赞的业务并发问题处理? b. 在哪里加的锁? c. 你加锁是不是限制了自己的并发,来换取数据的一致性? d. 应该用redis、就是我前面问你的集合的场景。一个帖子就是一个集合,谁点过赞,谁就在集合里,集合有个member、有个score,点赞的时间就是score,这样的话我对帖子的所有数据已经提前聚合好,可以最快的速度拿来? 最终落库的时候,可以考虑落,也可以不落
  9. 实习能够实习多久,转正了呢?
  10. 一周实习几天?
  11. 寒假在哪实习的?暑假来的北京?可以接受其他城市吗?
  12. 面试结果三天之内有人联系,就过,没人联系就挂。
  13. 北京的校招不清楚,成都有自己的校招
  14. 好未来有100多个子公司,成都这个属于集团内部第四
  15. 总部在北京,不清楚北京的校招怎么样?
  16. 你现在大三没法转正,实习可以转正,可以提前转正,有名额、转正名额相对较多、实习问的相对较多
  17. 简历写熟悉的问的较多
  18. golang属于公司新开辟的业务线,旧的业务线属于夹杂着golang和php,但仍以golang为主
  19. 房子自己住、有餐补、薪资找人事了解
  20. 校招和实习是分开的,校招不会要大三的,一半大四下学期要校招。实习就是提前培养人才,然后再筛一波。如果实习表现不好的话,校招还有一次机会。本来实习是两面的,但是最近比较忙,就一轮技术面。校招难度较大一般三轮技术面。有实习比校招占很多优势。
  21. 我们业务上还是有优势的,来的话培养是没问题的,因为我们有足够多的业务支持。
  22. 了解一下最快的入职时间,得等成都疫情解封才能入职

全部评论
兄弟们,等了这么久,今天hr终于给我打电话啦,一面过了!!!
3 回复 分享
发布于 2022-09-19 22:01 北京
好家伙,9月21号二面群面,今天(10月20号)hr终于给我打电话了,二面过了,拿到好未来offer了
2 回复 分享
发布于 2022-10-20 11:05 北京
23届的咋还在面实习呢
2 回复 分享
发布于 2022-09-11 11:43 重庆
怎么保持cpu一直不被协程占用?满足什么条件会退出?通过什么方式切换? goroutine支持信号抢占式机制,一个goroutine不会一直占用cpu,在执行超过一段时间后让出。 每个系统级线程m在初始化时,会注册一个可以接收sigurg信号的handler,这个sigurg信号由sysmon的监视器发出,sysmon单独占用了一个系统级线程m,sysmon每隔一段时间会检测goroutine是否执行超过10ms或是否执行gc,如果满足条件就会给对应线程发送sigurg信号,对应的handler开始执行,并给正在执行的协程打上标识,在检查当前栈是否溢出的地方判断,符合条件后线程会保存协程g的上下文,这样如果下次这个协程仍被这个线程执行,就可以恢复到上次执行的位置。当前协程会被丢弃到全局队列中,同时线程执行下一个协程。 参考链接:https://juejin.cn/post/6972893426425528357
1 回复 分享
发布于 2022-09-22 15:53 北京
校招可以试试我首页帖子
1 回复 分享
发布于 2022-09-17 09:19 上海
卧槽,这个问题是真的细啊,面试官是大佬啊
1 回复 分享
发布于 2022-09-11 00:07 四川
看完不敢面了…这也太难了
点赞 回复 分享
发布于 2023-06-13 16:15 北京
佬 得物了解下不 【得此好物,心潮澎湃】 七大职类:技术类、风控类、职能类、设计类、供应链类、产品类、运营类 三大城市:上海、杭州、廊坊 投递链接: https://app.mokahr.com/m/campus_apply/thedu/37483?recommendCode=DSDdd9KJ#/jobs  内推码申请优先筛选简历,内推码:DSDdd9KJ
点赞 回复 分享
发布于 2022-09-16 18:17 陕西
【g0线程(协程)和m0线程一般都担当什么职责?】答:g0是执行调度任务,m0是第一个运行的内核系统线程 (1)m0 是 Go Runtime 所创建的第一个系统线程,一个 Go 进程只有一个 m0,也叫主线程。 (2)m0 是进程在启动时应该汇编直接复制给 m0 的,其他后续的 m 则都是 Go Runtime 内自行创建的。 (3)g0 和常规的 g 不一样,没有那么多种运行状态,也不会被调度程序抢占,调度本身就是在 g0 上运行的。 (4)g0 和其他创建的 g 在数据结构上是一样的,但是存在栈的差别。在 g0 上的栈分配的是系统栈,在 Linux 上栈大小默认固定 8MB,不能扩缩容。而常规的 g 起始只有 2KB,可扩容。 参考文档:https://blog.csdn.net/EDDYCJY/article/details/115683313
点赞 回复 分享
发布于 2022-09-11 10:50 四川
lz今年不是大四吗
点赞 回复 分享
发布于 2022-09-08 14:43 云南
这也太难了
点赞 回复 分享
发布于 2022-09-08 10:04 山东
请问是base成都的实习吗
点赞 回复 分享
发布于 2022-09-08 08:29 四川
唉 我面的北京的golang岗 好像难度没这么大 不过昨天感谢信了 非常难过 还是比较向往好未来的😭
点赞 回复 分享
发布于 2022-09-08 01:48 福建

相关推荐

01-24 14:28
已编辑
南京信息工程大学 Java
有一堆投了没任何回信的,就记录下至少参与笔试的公司。有些公司没法记录过程或是忘记了,技术栈是java后端,因为是苏州人大多投的苏州或附近公司。参与笔试后没后文或被拒:神州信息、中国电信、极智嘉、中通快递、中国建筑、收钱吧、CVTE、小米、同程旅行、阅文集团主动放弃后续流程:苏宁易购、上海银行、中通服、苏州银行、江苏联通有面试:中国银行苏州分行-信息科技岗9.27线下笔试主要是考公题+英语+科技岗加试内容11.4线下一面包含无领导小组讨论与结构化单面12.2发差额体检12.16offer多益网络苏州9.2笔试9.8一面1.自我介绍2.项目难点3.bitmap存储签到信息为什么不用数组?4.sorted set底层除了跳表还有什么?5.介绍下跳表6.那为什么用跳表不用红黑树呢?7.介绍下策略模式8.手撕代码:父子继承,多态控制9.研究方向介绍下10.介绍下快排怎么做的,是否稳定?11.介绍一下堆排序12.一般什么问题会用到归并排序?13.讲讲cas14.讲讲mysql索引的底层15.那为什么sorted set底层不用b+树呢?16.讲讲对mysql锁的了解17.反问其中穿插了很多项目里的问题,基本完全结合项目提问。9.22HR面1.自我介绍2.什么时候开始求职的,主要投了哪些公司,是否有offer了?3.对做游戏的倾向?4.求职主要看重哪些方面因素?5.薪资期望?6.自己期望每天工作多久,一周休息几天?(挺无语的)7.对公司的了解有多少?8.为什么当时读研,有继续深造打算吗?9.研究方向是什么?10.为什么当时网申没填微博信息,平时用什么软件比较多?11.父母工作?12.测评阶段有没有印象比较深刻的题目,聊聊13.介绍下简历上的经历10.13二面(无后续)1.自我介绍2.找工作主要看重哪些方面呢?3.对游戏行业的了解4.来做游戏服务端开发有哪些优势?5.实习期间做的最复杂的业务6.实习期间下班后干什么?7.介绍下自己的项目8.对redis的了解9.实际项目里有用到redis持久化相关内容吗?10.有自己实际部署过哨兵相关内容吗?11.对java虚拟机有了解吗?12.讲讲线程池原理以及一些设计13.对数据库有什么了解?14.索引相关15.对多版本并发控制有什么了解?16.手撕代码:父子继承,多态控制博众精工10.11一面ai面(无后续)1.自我介绍2.分享在项目中遇到的棘手问题,是如何解决的?3.追问24.举例说明为了完成任务,去学习新技术的经历5.追问46.学习或工作中有没有遇到进展不顺利或想要放弃的时候,如何解决的?7.追问68.英语听力+口语题同盾科技9.21笔试10.14一面1.自我介绍2.项目问题3.分布式数据同步、数据一致性4.项目中jdk版本用的多少?5.jdk1.8中并发包相关6.线程池使用相关7.mysql索引8.B树和B+树区别9.截至目前做的自己最满意的一件事是什么10.手撕算法:简单题,链表相关10.24二面(无后续)1.自我介绍2.项目问题3.项目中有没有涉及到多线程和分布式的内容,介绍下4.gc机制了解吗?5.内存占用比较高,怎么解决?6.研究方向博云科技10.31一面1.自我介绍2.实习中技术难点3.具体项目问题4.未来发展方向?5.什么时候能来实习6.讲讲常用算法,快排归并7.讲讲对锁的了解8.讲讲最熟的map的底层、扩容等内容9.线程池相关10.java和python的区别,java的优点11.讲讲自己的优点、缺点12.反问11.2二面(无后续)1.自我介绍2.为什么没留在实习公司转正3.对大模型智能体了解4.java面向对象六大原则5.设计模式相关6.java集合相关7.mysql索引失效情况8.慢sql问题9.mysql锁相关10.什么时候行级锁会变成表级锁11.mysql主从复制12.有了解过gid吗?13.从库怎么切换成主库14.死锁什么情况下产生15.了解过生产者消费者模式吗?16.线程池相关17.未来发展方向18.反问无锡奥特维11.10一面(无后续)1.自我介绍2.讲讲spring boot,mysql,redis各个技术栈作用3.项目问题4.实习过程中架构和工作流程5.实习过程中遇到最大问题6.是不是自学的java,技术路线是什么,学习中间件的理由7.有没有研究过中间件源码8.讲讲xxl-job9.sql分页10.有没有用过其他数据库11.接触过哪些非关系数据库12.讲讲redis的数据结构及使用场景13.讲讲对aop的理解,底层原理14.讲讲工厂模式和策略模式15.讲讲线程池用了哪些设计模式16.讲讲sql里事务的相关语句17.对spring的ioc怎么理解的?18.如何实现依赖注入19.有没有了解过垃圾收集器20.相关垃圾收集算法21.有没有遇到服务起不来了或者oom问题,怎么处理的?22.讲讲用到的java集合23.反问民生银行苏州分行11.13一面线上无领导小组辩论,题目是大学开放相关,正反观点辩论11.24二面线下半结构群面12.8offer中金所技术苏州10.28笔试11.6一面 hr+技术1.自我介绍2.项目问题3.研究方向4.对MCP的理解5.平时通过哪些平台学习?6.个人优缺点7.接口抽象类如何选择?8.讲讲反射9.说说代理的实现方式10.代理在spring的经典应用11.说说aop的几个核心元素12.线程的几种实现方式13.说说线程池实现与参数14.讲讲设计模式15.说说spring的一些注解16.讲讲实现事务的方式17.分布式如何实现并发安全18.有没有项目部署经验19.linux上查看进程命令20.linux查看磁盘大小命令21.数据库分页和分组函数22.反问11.21二面线下简历面12.3三面线下无领导小组讨论群面1.7offer海舟智能12.9一面线下面,先做一张小试卷,然后技术面12.12offer南京银行苏州分行10.30笔试11.27一面(无后续)线下单面,偏向半结构
点赞 评论 收藏
分享
评论
15
150
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务