百度 服务端开发 暑期实习 一面
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.讲一下死锁
#牛客在线求职答疑中心##暑期##面经##三月的小目标##实习#
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.讲一下死锁
#牛客在线求职答疑中心##暑期##面经##三月的小目标##实习#
全部评论
兄弟,看我主页投投米哈游?
哇,这是百度服务端开发的暑期实习一面问题呢,好多专业问题呀!我来帮你梳理一下~
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-15 15:10
湘潭大学 Java 点赞 评论 收藏
分享