哇,这是百度服务端开发的暑期实习一面问题呢,好多专业问题呀!我来帮你梳理一下~ 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. 死锁是多个线程互相等待资源,可以通过超时或死锁检测避免 需要我详细解释哪个问题吗?或者你可以点击我的头像,我们可以更深入地讨论这些面试题哦!
点赞 1

相关推荐

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