深度解析Java游戏服务器开发

深度解析Java游戏服务器开发
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2017-01
版次: 01
ISBN: 9787121301421
定价: 79.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 392页
字数: 510千字
正文语种: 简体中文
  • 为了帮助想了解入门游戏服务器开发的从业人员或非从业人员迅速掌握Java游戏服务器开发的技术,本书从游戏的行业分析、Java技术、游戏逻辑、数据库技术、网络理论、服务器技术、架构分析、系统优化等方面对游戏服务器开发做了全面解析,并对目前市面较热门的游戏进行分析,从行业到理论到技术,再到架构到实战。本书带领读者熟悉Java游戏服务器开发相关领域,帮助想要入门游戏服务器领域的读者更快地了解并掌握相关内容。本书实用性强,既是非游戏行业人员迅速了解并掌握游戏服务器技术的宝典,又是游戏行业从业人员进阶提升的实用手册。本书适合作为非游戏行业但想入门游戏行业的Java工程师、想了解游戏服务端技术的游戏前端工程师、需要游戏服务器开发入门工具书的人员,以及其他对游戏服务器开发有兴趣爱好的各类人员的阅读书籍。 何金成,游戏行业开发者,从事于游戏服务器研发工作,曾就职于游戏谷,参与大型3DMMORPG《七雄无双》的服务端研发,后任职熊孩子游戏,并担任Java服务端主程,负责《英雄守卫战》、《王者守卫战》、《国战三国志》以及《英雄对冲》等多款手游的服务端研发工作。腾讯GAD开发社区特约撰稿人。涉猎广泛,擅长Java后端研发,分布式服务开发,同时也精通Cocos、Egret等游戏前端引擎,曾在博客写过不少详细的游戏开发案例,掌握多种技术,并且非常乐于分享,是一位有着游戏梦的游戏开发者。 目录
    CONTENTS


    基础篇  走进游戏开发
    第1章  认识游戏 2
    1.1  什么是游戏 2
    1.1.1  游戏的定义 2
    1.1.2  游戏的分类 3
    1.2  游戏开发及分工 7
    1.3  游戏行业现状分析 12
    1.4  游戏服务器开发要点 15
    总结 17
    第2章  环境搭建 18
    2.1  Windows开发环境搭建 18
    2.1.1  安装JDK 18
    2.1.2  安装Eclipse 20
    2.1.3  安装数据库客户端工具 21
    2.1.4  安装SSH工具 21
    2.1.5  安装其他工具 22
    2.2  Mac OS X开发环境搭建 22
    2.2.1  安装JDK 23
    2.2.2  安装Eclipse 23
    2.2.3  安装数据库客户端工具 24
    2.2.4  安装SSH工具 24
    2.2.5  安装其他工具 24
    2.3  Linux服务器环境搭建 25
    2.3.1  安装JDK 25
    2.3.2  安装Tomcat 26
    2.3.3  安装MySQL 26
    2.3.4  安装Mongo 28
    2.3.5  安装Redis 29
    2.3.6  安装Memcache 32
    2.4  总结 33
    入门篇  游戏开发
    第3章  网络通信 36
    3.1  通信协议 36
    3.1.1  面向连接的TCP 37
    3.1.2  面向数据报的UDP 38
    3.1.3  HTTP编程 39
    3.1.4  Socket编程 46
    3.1.5  WebSocket编程 54
    3.2  Java NIO基础 58
    3.2.1  BIO编程(Blocking-IO,阻塞式IO) 59
    3.2.2  NIO编程(Non-Blocking IO,非阻塞式IO) 61
    3.2.3  AIO编程(Async IO/NIO.2,异步IO) 68
    3.3  Mina的介绍及其使用 75
    3.3.1  总体架构 76
    3.3.2  IoService 77
    3.3.3  IoFilterChain 77
    3.3.4  IoHandler 77
    3.3.5  IoSession 77
    3.3.6  工作原理 78
    3.3.7  Acceptor与Connector线程 78
    3.3.8  Processor线程 78
    3.3.9  线程模型 79
    3.3.10  请求的处理顺序 80
    3.3.11  Mina编程 81
    3.4  Netty的介绍及其使用 88
    3.4.1  总体架构 88
    3.4.2  零拷贝 89
    3.4.3  Codec框架 90
    3.4.4  Channel 90
    3.4.5  ChannelEvent 91
    3.4.6  ChannelPipeline 91
    3.4.7  Netty编程 91
    总结 100
    第4章  数据交互 101
    4.1  数据传输格式 101
    4.2  JSON的使用及解析 103
    4.2.1  JSON语法 103
    4.2.2  JSON对象 104
    4.2.3  JSON数组 104
    4.2.4  Java中的JSON解析 105
    4.3  XML的使用及解析 110
    4.3.1  XML的特征 111
    4.3.2  数据共享 111
    4.3.3  数据传输 111
    4.3.4  平台兼容 111
    4.3.5  JSON与XML的比较 112
    4.3.6  Java中的XML解析 112
    4.4  Google Protocol Buffer的介绍及使用 128
    4.4.1  Protobuffer的安装与编译 128
    4.4.2  Protobuffer的语法 129
    4.4.3  生成Java类 130
    4.4.4  Eclipse的protobuf-dt插件 131
    4.4.5  示例程序 132
    总结 134
    第5章  数据缓存与持久化 135
    5.1  游戏数据存储 135
    5.1.1  数据分类 136
    5.1.2  数据缓存方式 136
    5.1.3  数据持久化方式 137
    5.1.4  数据库的比较 137
    5.2  MySQL的介绍及使用 138
    5.2.1  特点 138
    5.2.2  数据类型 139
    5.2.3  MySQL的使用 139
    5.2.4  在Java中使用MySQL 142
    5.3  MongoDB的介绍及使用 157
    5.3.1  MongoDB的主要特点 157
    5.3.2  了解API 159
    5.3.3  Mongo的使用 162
    5.4  Memcache的介绍及使用 174
    5.4.1  Memcache的特点 175
    5.4.2  Memcache的使用场景 176
    5.4.3  在Java中使用Memcache 177
    5.4.4  客户端使用要点 182
    5.5  Redis的介绍及使用 183
    5.5.1  Redis的特点 183
    5.5.2  Redis的持久化 184
    5.5.3  Redis的主从复制 184
    5.5.4  在Java中使用Redis 185
    总结 199
    第6章  游戏逻辑 200
    6.1  逻辑架构 200
    6.1.1  项目目录 200
    6.1.2  模块介绍 202
    6.2  逻辑流程 212
    6.2.1  网络模块 212
    6.2.2  线程池 221
    6.2.3  启动服务器 222
    6.2.4  逻辑请求处理 223
    6.2.5  关闭服务器 228
    6.3  事件处理器 229
    6.4  定时任务 236
    6.5  RPC框架 244
    6.5.1  Json-rpc 244
    6.5.2  Motan 253
    总结 264
    第7章  游戏安全 265
    7.1  游戏安全的必要性 265
    7.2  登录安全 266
    7.3  游戏充值 266
    7.4  SQL注入 267
    7.5  通信协议与消息格式 268
    7.6  整型溢出 269
    7.7  并发请求 269
    7.8  逻辑漏洞 270
    7.9  日志系统 271
    总结 271
    高级篇  游戏服务器的设计及优化
    第8章  服务器架构分析 274
    8.1  服务器架构的演变过程 274
    8.2  全区同服架构分析 277
    8.2.1  COC架构模型分析 278
    8.2.2  COK架构模型分析 279
    8.3  分区分服架构分析 281
    8.4  弱联网类游戏架构分析 282
    8.5  MMORPG类游戏架构分析 283
    总结 285
    第9章  《皇室战争》游戏开发实战 286
    9.1  微竞技游戏介绍 286
    9.2  架构分析及搭建 287
    9.2.1  功能分析 287
    9.2.2  服务器部署架构 288
    9.2.3  系统架构 289
    9.3  数据持久化方案 290
    9.3.1  数据结构分析 290
    9.3.2  使用Morphia操作MongoDB 295
    9.4  Netty网络框架的使用 300
    9.4.1  Netty实现的HTTP服务器 300
    9.4.2  Netty实现的TCP服务器 309
    9.5  账号系统 316
    9.6  个人信息 323
    9.7  英雄卡牌系统 327
    9.8  宝箱系统 334
    9.9  战斗系统 339
    9.10  客户端模拟 349
    9.10.1  登录界面 349
    9.10.2  选服界面 354
    9.10.3  主逻辑界面 358
    9.10.4  对战界面 363
    总结 372
    第10章  游戏开发技术前景 373
    10.1  Egret 373
    10.2  Cocos 2D 374
    10.3  Unity 375
    10.4  Unreal 376
    10.5  Java 376
    10.6  Node.js 377
    总结 378
  • 内容简介:
    为了帮助想了解入门游戏服务器开发的从业人员或非从业人员迅速掌握Java游戏服务器开发的技术,本书从游戏的行业分析、Java技术、游戏逻辑、数据库技术、网络理论、服务器技术、架构分析、系统优化等方面对游戏服务器开发做了全面解析,并对目前市面较热门的游戏进行分析,从行业到理论到技术,再到架构到实战。本书带领读者熟悉Java游戏服务器开发相关领域,帮助想要入门游戏服务器领域的读者更快地了解并掌握相关内容。本书实用性强,既是非游戏行业人员迅速了解并掌握游戏服务器技术的宝典,又是游戏行业从业人员进阶提升的实用手册。本书适合作为非游戏行业但想入门游戏行业的Java工程师、想了解游戏服务端技术的游戏前端工程师、需要游戏服务器开发入门工具书的人员,以及其他对游戏服务器开发有兴趣爱好的各类人员的阅读书籍。
  • 作者简介:
    何金成,游戏行业开发者,从事于游戏服务器研发工作,曾就职于游戏谷,参与大型3DMMORPG《七雄无双》的服务端研发,后任职熊孩子游戏,并担任Java服务端主程,负责《英雄守卫战》、《王者守卫战》、《国战三国志》以及《英雄对冲》等多款手游的服务端研发工作。腾讯GAD开发社区特约撰稿人。涉猎广泛,擅长Java后端研发,分布式服务开发,同时也精通Cocos、Egret等游戏前端引擎,曾在博客写过不少详细的游戏开发案例,掌握多种技术,并且非常乐于分享,是一位有着游戏梦的游戏开发者。
  • 目录:
    目录
    CONTENTS


    基础篇  走进游戏开发
    第1章  认识游戏 2
    1.1  什么是游戏 2
    1.1.1  游戏的定义 2
    1.1.2  游戏的分类 3
    1.2  游戏开发及分工 7
    1.3  游戏行业现状分析 12
    1.4  游戏服务器开发要点 15
    总结 17
    第2章  环境搭建 18
    2.1  Windows开发环境搭建 18
    2.1.1  安装JDK 18
    2.1.2  安装Eclipse 20
    2.1.3  安装数据库客户端工具 21
    2.1.4  安装SSH工具 21
    2.1.5  安装其他工具 22
    2.2  Mac OS X开发环境搭建 22
    2.2.1  安装JDK 23
    2.2.2  安装Eclipse 23
    2.2.3  安装数据库客户端工具 24
    2.2.4  安装SSH工具 24
    2.2.5  安装其他工具 24
    2.3  Linux服务器环境搭建 25
    2.3.1  安装JDK 25
    2.3.2  安装Tomcat 26
    2.3.3  安装MySQL 26
    2.3.4  安装Mongo 28
    2.3.5  安装Redis 29
    2.3.6  安装Memcache 32
    2.4  总结 33
    入门篇  游戏开发
    第3章  网络通信 36
    3.1  通信协议 36
    3.1.1  面向连接的TCP 37
    3.1.2  面向数据报的UDP 38
    3.1.3  HTTP编程 39
    3.1.4  Socket编程 46
    3.1.5  WebSocket编程 54
    3.2  Java NIO基础 58
    3.2.1  BIO编程(Blocking-IO,阻塞式IO) 59
    3.2.2  NIO编程(Non-Blocking IO,非阻塞式IO) 61
    3.2.3  AIO编程(Async IO/NIO.2,异步IO) 68
    3.3  Mina的介绍及其使用 75
    3.3.1  总体架构 76
    3.3.2  IoService 77
    3.3.3  IoFilterChain 77
    3.3.4  IoHandler 77
    3.3.5  IoSession 77
    3.3.6  工作原理 78
    3.3.7  Acceptor与Connector线程 78
    3.3.8  Processor线程 78
    3.3.9  线程模型 79
    3.3.10  请求的处理顺序 80
    3.3.11  Mina编程 81
    3.4  Netty的介绍及其使用 88
    3.4.1  总体架构 88
    3.4.2  零拷贝 89
    3.4.3  Codec框架 90
    3.4.4  Channel 90
    3.4.5  ChannelEvent 91
    3.4.6  ChannelPipeline 91
    3.4.7  Netty编程 91
    总结 100
    第4章  数据交互 101
    4.1  数据传输格式 101
    4.2  JSON的使用及解析 103
    4.2.1  JSON语法 103
    4.2.2  JSON对象 104
    4.2.3  JSON数组 104
    4.2.4  Java中的JSON解析 105
    4.3  XML的使用及解析 110
    4.3.1  XML的特征 111
    4.3.2  数据共享 111
    4.3.3  数据传输 111
    4.3.4  平台兼容 111
    4.3.5  JSON与XML的比较 112
    4.3.6  Java中的XML解析 112
    4.4  Google Protocol Buffer的介绍及使用 128
    4.4.1  Protobuffer的安装与编译 128
    4.4.2  Protobuffer的语法 129
    4.4.3  生成Java类 130
    4.4.4  Eclipse的protobuf-dt插件 131
    4.4.5  示例程序 132
    总结 134
    第5章  数据缓存与持久化 135
    5.1  游戏数据存储 135
    5.1.1  数据分类 136
    5.1.2  数据缓存方式 136
    5.1.3  数据持久化方式 137
    5.1.4  数据库的比较 137
    5.2  MySQL的介绍及使用 138
    5.2.1  特点 138
    5.2.2  数据类型 139
    5.2.3  MySQL的使用 139
    5.2.4  在Java中使用MySQL 142
    5.3  MongoDB的介绍及使用 157
    5.3.1  MongoDB的主要特点 157
    5.3.2  了解API 159
    5.3.3  Mongo的使用 162
    5.4  Memcache的介绍及使用 174
    5.4.1  Memcache的特点 175
    5.4.2  Memcache的使用场景 176
    5.4.3  在Java中使用Memcache 177
    5.4.4  客户端使用要点 182
    5.5  Redis的介绍及使用 183
    5.5.1  Redis的特点 183
    5.5.2  Redis的持久化 184
    5.5.3  Redis的主从复制 184
    5.5.4  在Java中使用Redis 185
    总结 199
    第6章  游戏逻辑 200
    6.1  逻辑架构 200
    6.1.1  项目目录 200
    6.1.2  模块介绍 202
    6.2  逻辑流程 212
    6.2.1  网络模块 212
    6.2.2  线程池 221
    6.2.3  启动服务器 222
    6.2.4  逻辑请求处理 223
    6.2.5  关闭服务器 228
    6.3  事件处理器 229
    6.4  定时任务 236
    6.5  RPC框架 244
    6.5.1  Json-rpc 244
    6.5.2  Motan 253
    总结 264
    第7章  游戏安全 265
    7.1  游戏安全的必要性 265
    7.2  登录安全 266
    7.3  游戏充值 266
    7.4  SQL注入 267
    7.5  通信协议与消息格式 268
    7.6  整型溢出 269
    7.7  并发请求 269
    7.8  逻辑漏洞 270
    7.9  日志系统 271
    总结 271
    高级篇  游戏服务器的设计及优化
    第8章  服务器架构分析 274
    8.1  服务器架构的演变过程 274
    8.2  全区同服架构分析 277
    8.2.1  COC架构模型分析 278
    8.2.2  COK架构模型分析 279
    8.3  分区分服架构分析 281
    8.4  弱联网类游戏架构分析 282
    8.5  MMORPG类游戏架构分析 283
    总结 285
    第9章  《皇室战争》游戏开发实战 286
    9.1  微竞技游戏介绍 286
    9.2  架构分析及搭建 287
    9.2.1  功能分析 287
    9.2.2  服务器部署架构 288
    9.2.3  系统架构 289
    9.3  数据持久化方案 290
    9.3.1  数据结构分析 290
    9.3.2  使用Morphia操作MongoDB 295
    9.4  Netty网络框架的使用 300
    9.4.1  Netty实现的HTTP服务器 300
    9.4.2  Netty实现的TCP服务器 309
    9.5  账号系统 316
    9.6  个人信息 323
    9.7  英雄卡牌系统 327
    9.8  宝箱系统 334
    9.9  战斗系统 339
    9.10  客户端模拟 349
    9.10.1  登录界面 349
    9.10.2  选服界面 354
    9.10.3  主逻辑界面 358
    9.10.4  对战界面 363
    总结 372
    第10章  游戏开发技术前景 373
    10.1  Egret 373
    10.2  Cocos 2D 374
    10.3  Unity 375
    10.4  Unreal 376
    10.5  Java 376
    10.6  Node.js 377
    总结 378
查看详情
您可能感兴趣 / 更多
深度解析Java游戏服务器开发
深度学习的数学——使用Python语言
[美]罗纳德·T.纽塞尔(Ronald T. Kneusel)
深度解析Java游戏服务器开发
深度工作(新):如何有效使用每一点脑力
(美)卡尔·纽波特 后浪
深度解析Java游戏服务器开发
深度学习的理论基础与核心算法
焦李成,杨淑媛,刘芳,刘旭,田晨曦,侯彪,马文萍,尚荣华
深度解析Java游戏服务器开发
深度学习与神经网络
赵金晶 等
深度解析Java游戏服务器开发
深度阅读训练册2年级B版
深度阅读教学研究中心 编
深度解析Java游戏服务器开发
深度学习模型与算法基础
许庆阳、宋勇、张承进
深度解析Java游戏服务器开发
深度学习与波束形成:理论、方法与实践
郭业才
深度解析Java游戏服务器开发
深度学习与大模型基础 图解以项目实践为引导的趣味、互动学习法
段小手 著
深度解析Java游戏服务器开发
深度营销:成就营销领导力的12大原则(麦肯锡年度经管好书,12大原则揭秘营销本质,带好团队就是从领导力到影响力!)
(美) 托马斯·巴塔 (美) 帕特里克·巴韦斯 著 ,美同 译
深度解析Java游戏服务器开发
深度教学:策略与实践
张勇
深度解析Java游戏服务器开发
深度学习高手笔记 卷2:经典应用
刘岩(@大师兄)
深度解析Java游戏服务器开发
深度学习——从算法本质、系统工程到产业实践
王书浩、徐罡
系列丛书 / 更多
深度解析Java游戏服务器开发
深度学习的数学——使用Python语言
[美]罗纳德·T.纽塞尔(Ronald T. Kneusel)
深度解析Java游戏服务器开发
深度工作(新):如何有效使用每一点脑力
(美)卡尔·纽波特 后浪
深度解析Java游戏服务器开发
深度学习的理论基础与核心算法
焦李成,杨淑媛,刘芳,刘旭,田晨曦,侯彪,马文萍,尚荣华
深度解析Java游戏服务器开发
深度学习与神经网络
赵金晶 等
深度解析Java游戏服务器开发
深度阅读训练册2年级B版
深度阅读教学研究中心 编
深度解析Java游戏服务器开发
深度学习模型与算法基础
许庆阳、宋勇、张承进
深度解析Java游戏服务器开发
深度学习与波束形成:理论、方法与实践
郭业才
深度解析Java游戏服务器开发
深度学习与大模型基础 图解以项目实践为引导的趣味、互动学习法
段小手 著
深度解析Java游戏服务器开发
深度营销:成就营销领导力的12大原则(麦肯锡年度经管好书,12大原则揭秘营销本质,带好团队就是从领导力到影响力!)
(美) 托马斯·巴塔 (美) 帕特里克·巴韦斯 著 ,美同 译
深度解析Java游戏服务器开发
深度教学:策略与实践
张勇
深度解析Java游戏服务器开发
深度学习高手笔记 卷2:经典应用
刘岩(@大师兄)
深度解析Java游戏服务器开发
深度学习——从算法本质、系统工程到产业实践
王书浩、徐罡
相关图书 / 更多
深度解析Java游戏服务器开发
深度学习的数学——使用Python语言
[美]罗纳德·T.纽塞尔(Ronald T. Kneusel)
深度解析Java游戏服务器开发
深度工作(新):如何有效使用每一点脑力
(美)卡尔·纽波特 后浪
深度解析Java游戏服务器开发
深度学习的理论基础与核心算法
焦李成,杨淑媛,刘芳,刘旭,田晨曦,侯彪,马文萍,尚荣华
深度解析Java游戏服务器开发
深度学习与神经网络
赵金晶 等
深度解析Java游戏服务器开发
深度阅读训练册2年级B版
深度阅读教学研究中心 编
深度解析Java游戏服务器开发
深度学习模型与算法基础
许庆阳、宋勇、张承进
深度解析Java游戏服务器开发
深度学习与波束形成:理论、方法与实践
郭业才
深度解析Java游戏服务器开发
深度学习与大模型基础 图解以项目实践为引导的趣味、互动学习法
段小手 著
深度解析Java游戏服务器开发
深度营销:成就营销领导力的12大原则(麦肯锡年度经管好书,12大原则揭秘营销本质,带好团队就是从领导力到影响力!)
(美) 托马斯·巴塔 (美) 帕特里克·巴韦斯 著 ,美同 译
深度解析Java游戏服务器开发
深度教学:策略与实践
张勇
深度解析Java游戏服务器开发
深度学习高手笔记 卷2:经典应用
刘岩(@大师兄)
深度解析Java游戏服务器开发
深度学习——从算法本质、系统工程到产业实践
王书浩、徐罡