百度 服务端开发 暑期实习 一面

1.讲一下Go语言的一些特点
2.讲一下进程、线程、协程的区别
3.讲一下Go里的Channel
4.s := make([]int,3)        s=append(s,1,2,3)     fmt.Println(s)    请问输出结果是什么
5.讲一下Redis常用数据结构。排行榜用哪个?如何用Redis实现锁?
6.讲一下缓存策略?旁路缓存中如何保证缓存和数据库数据一致性?
7.HTTP和HTTPS区别?
8.HTTPS状态码有哪些?502和504区别?499是什么?
9.消息队列消费者的幂等性如何保证?
10.MySQL存储引擎?innodb默认隔离级别?rr对幻读的解决情况?为什么不用串行化?

SQL:一张表,四个字段:员工ID、员工姓名,员工年龄,部门ID
要求查询员工平均年龄大于20岁的部门ID

手撕:单例模式

11.单例模式的使用场景
12.讲一下乐观锁和悲观锁
13.讲一下间隙锁
14.讲一下死锁

#牛客在线求职答疑中心##暑期##面经##三月的小目标##实习#
全部评论
佬有结果吗
点赞 回复 分享
发布于 03-23 20:58 北京
兄弟,看我主页投投米哈游?
点赞 回复 分享
发布于 03-17 22:08 上海
哇,这是百度服务端开发的暑期实习一面问题呢,好多专业问题呀!我来帮你梳理一下~ 1. Go语言特点:简洁高效、并发支持好(goroutine)、垃圾回收、编译型语言等 2. 进程/线程/协程区别:进程是资源分配单位,线程是CPU调度单位,协程是用户态轻量级线程 3. Go Channel:goroutine间通信的管道,支持同步和异步通信 4. 那段代码输出应该是 [0 0 0 1 2 3],因为append会扩容切片 5. Redis常用结构:string、hash、list、set、zset。排行榜用zset,可以用SETNX实现锁 6. 缓存策略:LRU、LFU等。一致性可以通过先更新数据库再删除缓存的方式保证 7. HTTPS比HTTP多了SSL/TLS加密,更安全 8. 502是网关错误,504是网关超时,499是客户端主动关闭连接 9. 幂等性可以通过唯一ID或版本号实现 10. MySQL存储引擎有InnoDB,默认隔离级别RR,通过间隙锁解决部分幻读问题 SQL查询: ```sql SELECT 部门ID FROM 员工表 GROUP BY 部门ID HAVING AVG(员工年龄) > 20 ``` 单例模式确保类只有一个实例 11. 单例场景:配置管理、数据库连接池等 12. 乐观锁假设冲突少,版本号控制;悲观锁假设冲突多,直接加锁 13. 间隙锁锁定范围,防止幻读 14. 死锁是多个线程互相等待资源,可以通过超时或死锁检测避免 需要我详细解释哪个问题吗?或者你可以点击我的头像,我们可以更深入地讨论这些面试题哦!
点赞 回复 分享
发布于 03-17 17:26 AI生成

相关推荐

03-24 11:07
已编辑
门头沟学院 golang
几乎都没什么很冷门的八股拷打,都是结合实际业务,体验真的很棒,也意识到自己很多不足,面试官真的给了很棒的建议。1. MySQL索引,如何利用索引优化查询的(利用索引优化深分页,索引覆盖避免回表),索引的底层实现(B+ 树,聚簇索引和非聚簇索引,B+ 树上进行二分确定查询边界,然后在叶子节点类似双向链表的结构实现范围查询。)2. 如何实现异步秒杀的,如何防止超买,如何实现一人一单。(点评项目烂完了)3.用过哪些 AI 工具,是如何使用 Agent 辅助开发的,有哪些 Agent 相关的尝试。4.Redis 单机能够抗住多少 QPS 的简单查询,如 get 和 set 。(十万)5.对项目进行过压测吗,如何测出来的,大概的数值是多少?(Apifox 还有 go Test)6. gin 框架以及如何优化 gin 框架。7. WebSocket 通信是如何建立的,以及 WebSocket 通信的优势(首先建立 http 协议然后发起 upgrade 请求即可建立 websocket 连接。websocket 是基于有状态的全双工通信,避免了 http 每次通信时需要重新握手和挥手的开销,websocket 的 header 相比 http 请求要小得多)8.无手撕。反问:1. 感觉凉了,问自己还有哪方面需要提高的,面试官提了非常多有用的建议,使用微服务进行拆分,k8s 做一些集群节点管理,熔断还有限流测试,鼓励我不要放弃自己的优势(第一个在我反问阶段肯定过我的面试官)。2. 然后为了赚点经验,旁敲侧击问面试官目前我应该继续深入学习微服务还是赶紧润 Agent,面试官很真诚的建议我继续精进微服务,说目前微服务岗位还是很多的。3. 腾讯会议在 Archlinux 上好像有 bug ,最后问面试官能不能看到我的视频(因为我这边什么都看不到),然后跟面试官说我这个系统的腾讯会议显示可能无法进行代码能力测试,能不能随便拉个题目给我看看我这边能不能试试。结果还是什么都看不到,Linux 系统的腾讯会议最好还是拉个 Windows 虚拟机。
点赞 评论 收藏
分享
评论
点赞
5
分享

创作者周榜

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