疯狂游戏后端开发一面10.30
1. Java 和 Go 在线程与协程的模型上有什么区别?
2. Go 语言的 GMP 调度模型相关问题(追问协程调度细节)。
3. Go 语言中 channel 是用来干什么的?
4. Go 中用于跨平台通信的 channel,与传统的 Socket 通信有什么区别?
5. TCP 和 WebSocket 各有什么特点?WebSocket 相对于 TCP 有什么好处?TCP 做不到但 WebSocket 能做到的事情是什么?
6. 客户端与服务器连接因网络波动断连时,如何实现断线重连?(需保证消息连续与缓存)
7. 游戏开发中,帧同步模式下后端与客户端存在延迟,如何减小延迟影响?若用 UDP 传输但需保证不丢帧,该如何实现?
8. Redis 作为缓存时,如何防止缓存穿透、击穿、雪崩问题?
9. 常见的分布式锁有哪些?(含 Redis Redisson 红锁相关追问)
10. 游戏中角色数据服务器与战斗服务器之间,应选择什么方案实现通信?RPC 方式有什么缺点?若对方服务不可用或网络有问题,该如何处理?
11. 游戏活动 / 公告推送需做灰度发布(仅推送给部分玩家),该如何设计?
12. 游戏活动配置需支持后端网页填写、审核、发布流程,且要保证可回滚、有历史版本,该如何设计这套自动化流程?
13. 之前用 Redis 的 ZSet 做定时消息推送,若需提高推送时间精度(如精确到毫秒 / 100 毫秒)且提升效率,是否有替代方案?
14. 游戏中生成角色快照(类似气象海报生成),若在服务器端渲染且有大量玩家同时生成,如何优化后端生成服务的效率?
15. 如何设计分布式的游戏世界聊天服务器架构?(含聊天限流相关追问)
16. 现场完成笔试题:在不使用特定工具(如 ODI)的情况下,处理部门层级数据(PID 关联),实现数据的层级结构化(如一级、二级部门嵌套)。


 投递牛客等公司10个岗位
投递牛客等公司10个岗位