1.1 Go语言游戏项目应用情况汇报
1.63 MB
21 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
中文(简体) | .pdf | 3 |
摘要 | ||
厦门真有趣信息科技有限公司自2012年起开始使用Go语言来替代Erlang,开发仙侠道网页版和手机版游戏。为了应对游戏服务端面临的高频请求、高实时性要求以及高开发和运维效率的挑战,公司采取了多项措施:在通讯层引入协议描述语言和自动代码生成;在业务层优化顺序结构和接口注册;在数据层实现内存数据库与MySQL的映射,并通过事务同步和日志机制提升性能。此外,公司还进行了GC优化、RPC调用、chan阻塞等技术改进,以提高响应速度和数据处理效率。 | ||
AI总结 | ||
## 《1.1 Go语言游戏项目应用情况汇报》摘要
### 项目背景
- **公司**:厦门真有趣信息科技有限公司
- **项目时间**:2012年-2015年
- **项目内容**:仙侠道网页版和手机版
- **技术替换**:2012年-2015年,Go语言替代Erlang开发网页版;2014年-2015年,手机版在原架构基础上拆分游戏逻辑服务器,分离互动功能。
### 游戏服务端挑战
- **请求频繁**:支持高并发。
- **实时性要求高**:百毫秒延迟即可被用户感知。
- **开发效率要求高**:每周更新一次。
- **运维效率要求高**:最好无需运维。
### 解决方案
- **通讯层**:使用协议描述语言生成代码,自动化开发。
- **业务层**:顺序结构和接口注册,清晰划分功能。
- **数据层**:内存数据库替代传统数据库,代码自动生成,提升性能。
### 数据层优化
- **数据库切片**:减少查询时的数据量。
- **内存事务**:支持事务操作,确保数据一致性。
- **事务同步**:以事务为单位同步到数据库,确保数据持久性。
- **事务日志**:支持Redo和Undo操作,保证数据可恢复。
- **日志数据挖掘**:使用Lua脚本分析日志,提供数据支持。
### 性能优化
- **CGO优化**:提升处理速度。
- **RPC调用**:高效通信机制。
- **channel优化**:避免阻塞,提升并发能力。
- **数据 côtisation**:数据尽可能贴近CPU,降低访问延迟。
- **数据结构优化**:减少数据复制,避免大集合遍历。
- **接口管理**:注册接口,防止循环引用。
通过以上措施,项目在性能、开发效率和运维方面均得到了显著提升,证明了Go语言在游戏开发中的有效性和优势。 |
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
14 页请下载阅读 -
文档评分