(每日一题)游戏服务器网关开发

(每日一题)游戏服务器网关开发

5.7 服务错误异常全局捕获 92

5.7.1 默认全局Web异常捕获 92

5.7.2 自定义全局Web异常捕获 93

5.7.3 异常捕获测试 95UI界面

5.8 本章小结 96

第 6 章 游戏服务器网关开发 97

6.1 游戏服务器网关管理 97

6.1.1 游戏服务器网关必须支持动态缩放 97

6.1.2 游戏服务器网关工程搭建及配置 99

6.1.3 游戏服务器网关信息缓存管理 101

6.1.4 游戏服务器网关负载均衡策略 105

6.1.5 测试游戏服务器网关信息 107

6.2 客户端与游戏服务器网关通信开发 109

6.2.1 客户端项目创建 109

6.2.2 网络通信数据包粘包和破包 117

6.2.3网络通信协议制定119

6.2.4 客户端消息编解码开发 121

6.2.5 游戏服务器网关消息编解码开发 124

6.2.6 使用Netty实现游戏服务器网关长连接服务 127

6.3 请求消息参数和响应消息参数的对象化 130

6.3.1 请求和响应消息封装 130

6.3.2 客户端与游戏服务器网关通信测试 137

6.4 消息体对象序列化和反序列化 139

6.4.1 消息体使用JSON序列化和反序列化 140

游戏引擎架构在线阅读_引擎构筑在桌游里什么意思_引擎构筑什么意思

6.4.2 使用Protocol Buffers对消息体进行序列化和反序列化142

6.5 自动消息分发处理 146

6.5.1自动消息分发设计147

6.5.2消息自动分发开发148

6.6网络通信安全152

6.6.1 连接认证 152

6.6.2 通信协议加解密154

6.6.3 游戏服务器网关流量限制 158

6.7 网络连接管理 159

6.7.1 连接管理 159

6.7.2 连接心跳检测 163

6.7.3消息幂等处理167

6.8 本章小结168

第七章 游戏服务器网关与游戏业务服务数据通信 169

7.1 游戏服务器网关与游戏业务服务之间通信的定义 169

7.1.1 游戏服务器网关消息转发 169

7.1.2 定义消息通信模型 170

7.1.3 Spring Cloud Bus消息总线 173

7.1.4 消息总线通信层-Kafka174

7.1.5 消息总线消息发布订阅测试 178

7.2 游戏服务器网关与游戏业务服务通信的实现 178

7.2.1 消息序列化和反序列化实现 179

7.2.2 游戏服务器网关消息负载均衡 181

7.2.3 游戏服务器网关消息转发实现 185

7.2.4 游戏服务器网关监听并接收响应消息 189

7.2.5 增加游戏业务服务项目 190

7.2.6 游戏服务接收并响应网关消息 193

7.3 游戏服务器网关与游戏服务通信测试 195

7.4 本章小结197

第8章 游戏业务处理框架开发 198游戏素材

8.1 游戏服务器中的多线程管理 198

8.1.1 线程数的管理 198

8.1.2 游戏服务线程池分配200

8.2Netty线程池模型200

8.2.1 Netty线程模型的核心类201

8.2.2 获取线程池执行结果202

8.3 客户端消息处理和管理205

8.3.1 借鉴Netty的消息处理机制205

8.3.2 客户端消息事件处理框架模型209

8.3.3 实现自定义MultithreadEventExecutorGroup213

8.3.4 实现GameChannel217

8.3.5 实现GameChannelPipeline220

8.3.6 实现 AbstractGameChannelHandlerContext222

8.3.7 实现客户端消息处理和消息返回224

8.3.8GameChannel空闲超时处理228

引擎构筑什么意思_游戏引擎架构在线阅读_引擎构筑在桌游里什么意思

8.4 不同游戏用户之间的数据交互236

8.4.1 多线程并发操作数据引起的错误或异常 237

8.4.2 功能设计中避免用户数据之间的直接交互239

8.4.3 架构设计中解决用户数据之间的直接交互 239

8.4.4GameChannel事件自动分发处理243

8.5 本章小结245

第9章 游戏用户数据管理246

9.1 游戏用户数据异步加载 246

9.1.1 加载游戏数据的时机 246

9.1.2 游戏数据异步加载的实现247

9.2 游戏数据持久化到数据库250

9.2.1 游戏数据持久化方法250

9.2.2 异步持久化数据中的并发问题 251

9.2.3 数据定时异步持久化实现253

9游戏引擎架构在线阅读.3 Player对象的封装和使用 256

9.3.1 直接操作Player对象的缺点256

9.3.2 实现Player对象数据和行为的分离258

9.4 本章小结260

第10章RPC通信设计与实现261

10.1 游戏模块服务划分261

10.1.1 游戏服务是否需要微服务261

10.1.2 游戏服务模块进程划分规则 263

引擎构筑在桌游里什么意思_引擎构筑什么意思_游戏引擎架构在线阅读

10.2 RPC通信实现264

10.2.1定制RPC设计264

10.2.2负载均衡管理268

10.2.3 创建 Arena 服务项目 274

10.2.4 发送和接收RPC请求消息281

10.2.5 发送和接收RPC响应消息 290

10.2.6RPC请求超时检测292

10游戏引擎架构在线阅读.3 本章小结293

第十一章事件系统的设计与实现294

11.1 事件系统在服务器开发中的重要性294

11.1.1什么是事件系统294

11.1.2 事件系统可以解耦模块依赖295

11.1.3事件系统使代码更容易维护296

11.2事件系统的实现296

11.2.1 基于监听接口定制事件系统297

11.2.2 定制基于注释的事件系统 299

11.2.3 Spring事件系统应用304

11.3 基于事件的任务系统306

11.3.1 任务系统要求 307

11.3.2面向过程的任务系统实现308

11.3.3面向对象的事件触发任务系统的实现309

11.4 本章小结314

游戏引擎架构在线阅读_引擎构筑什么意思_引擎构筑在桌游里什么意思

第12章游戏服务器自动化测试315

12.1 游戏服务器自动化测试的重要性 315

12.1.1 单元测试使代码更简单 315

12.1.2 单元测试保证方法代码的正确性 321

12.1.3自动化测试保证代码重构的安全323

12.2 游戏服务器自动化测试的实现323

12.2.1 TestNG框架简介324

12.2.2 Spring Boot单元测试配置325

12.2.3方法单元测试用例实现329

12.2.4 服务器集成测试实施336

12.2.5 使用TestNG配置文件区分不同的测试环境340

12.3本章小结342

第十三章 服务器开发实例-世界聊天系统343

13.1 单服务器世界聊天系统的实现343

13.1.1 添加客户端命令 344

13.1.2 服务器实现消息转发 348

13.1.3 单服务器世界聊天测试 349

13.2分布式世界聊天系统的实现352

13.2.1分布式世界聊天系统的设计352

13.2.2 创建单独的聊天项目354

13.2.3 实现聊天消息的发布和转发356

13.2.4分布式世界聊天服务测试359

13.3 本章小结360

文章来源:https://read678.com/JdBook/index/22955