程序包 com.iohao.game.external.core
package com.iohao.game.external.core
游戏对外服 - core
游戏对外服的职责
1. 保持与用户(玩家)长的连接 2. 帮助开发者屏蔽通信细节、与连接方式的细节 3. 连接方式支持:WebSocket、TCP、UDP 4. 将用户(玩家)请求转发到游戏网关 5. 可动态增减扩展机器 6. 功能扩展,如:路由存在检测、路由权限、UserSession 管理、心跳,及后续要提供但还未提供的熔断、限流、降载、用户流量统计等功能。
扩展场景
游戏对外服主要负责与用户(玩家)的连接。假设一台硬件支持最多建立 5000 个用户连接,当用户量达到 7000 人时,我们可以增加一个游戏对外服来进行流量控制和减压。 由于游戏对外服的扩展性和灵活性,可以支持同时在线玩家从几千人到数千万人不等。 这是因为,通过增加游戏对外服的数量,可以有效地进行连接的负载均衡和流量控制,使得系统能够更好地承受高并发的压力。
连接方式的切换、支持、扩展
ioGame 已提供了 TCP、WebSocket、UDP 连接方式的支持,并提供了灵活的方式来实现连接方式的切换。 可以将 TCP、WebSocket、UDP 连接方式与业务代码进行无缝衔接。开发者可以用一套业务代码,无需任何改动,同时支持多种通信协议。 如果想要切换到不同的连接方式,只需要更改相应的枚举即可,非常简单。 在不使用 ioGame 时,将连接方式从 TCP 改为 WebSocket 或 UDP 等,需要进行大量的调整和改动,但在 ioGame 中,实现这些转换是简单的。 此外,除了能轻松切换各种连接方式外,还能同时支持多种连接方式,并使它们在同一应用程序中共存。 连接方式是可扩展的,而且扩展也简单,这意味着之后如果支持了 KCP,那么将已有项目的连接方式,如 TCP、WebSocket、UDP 切换成 KCP 也是简单的。
- 作者:
- 渔民小镇
- 日期:
- 2023-04-28
-
类说明与真实玩家连接的 ExternalCore 服务器,也是通信框架屏蔽接口与真实玩家连接的 ExternalCore 服务器设置由
ExternalCore
和ExternalBrokerClientStartup
组成的一个整体