之前想着要把什么什么给写一下,每次都太懒了,都是想起了才来写一下。今天只讨论游戏服务器的网关服务器。
1.转发
转发客户端和服务器间的消息,网关将场景、会话、数据、名字、平台等服务器的数据转发给客户端,接收客户端的数据,把消息转发给相应的服务器。很多时候,我们需要将消息发给所有的用户,如果让会话服务器来执行这个功能,如果这个时候服务器很负载很大,有2万人在线,那么就得发两万条消息给客户端,这个肯定是不允许的,所有我们将需要转发的消息给网关,如果每个 网关挂了4000人,那么网关就将这条消息发给每个用户了。当然了,在游戏设计时,特别是策划在活动制作时,必须尽量避免群发消息的功能。即使要发,我们将这2万人分组,然后分时分组发送。一般情况下,网关与场景是多对多的关系,和其他服务器都是1对多的关系
2.心跳
网关定时发送心跳给连接在这个网关上的所有客户端,保证客户端与网关的连接,如果某个客户端掉线了