V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
hkshawn
V2EX  ›  问与答

游戏网关开发

  •  
  •   hkshawn · 2019-04-26 18:45:49 +08:00 · 2115 次点击
    这是一个创建于 2064 天前的主题,其中的信息可能已经有所发展或是发生改变。

    想开发一款分布式的游戏网关,网关主要作用就是推送数据到目标服务器,网关自身带有负载均衡功能,也就是其中某个网关挂了,玩家不会掉线而切换至下一个网关。最好利用现有源码二次开发,费用再谈完功能后可以详谈,有兴趣的可以留下联系方式!

    6 条回复    2019-04-26 19:48:55 +08:00
    chinvo
        1
    chinvo  
       2019-04-26 18:48:28 +08:00
    不掉线怎么可能

    玩家是和网关保持链接的,一个网关挂了断线重连不要时间哦
    CallMeReznov
        2
    CallMeReznov  
       2019-04-26 18:54:23 +08:00
    LZ 这个需求非常像我 3 年前在棋牌公司的时候老总要求我在一个 2000 年前后写的代码上实现的功能.
    而我是个运维
    hkshawn
        3
    hkshawn  
    OP
       2019-04-26 18:59:00 +08:00
    楼上大佬可否详谈 1121011137
    hanxiV2EX
        4
    hanxiV2EX  
       2019-04-26 19:31:30 +08:00 via Android
    根据我几年游戏服务端开发的经验,我说下我的方案。

    网关可以只做转发,无状态的。

    客户端登录前先从一个 web 服务器获取服务器列表文件,web 服务器可以加 CDN,服务器列表文件包含了每个服务器的网关和代理。

    实现不断线的效果就需要客户端配合了,玩家除了普通登录的情况,还需要加入快速登录。断线时走快速登录流程。

    游戏服务器需要做的事情就是玩家在线数据的在玩家断线时不立马清除,设定玩家断线五分钟才清,这样快速登录耗时是很短的。

    快速登录还会有一个问题,断线后到断线重登的那段时间的数据客户端没有收到的,所以有两个方案,一个是游戏服务器缓存下行给玩家的数据,另一个是重新下发登录时所需的数据。
    hanxiV2EX
        5
    hanxiV2EX  
       2019-04-26 19:37:13 +08:00 via Android
    @hkshawn 觉得方案可行就联系我吧,wx:minghanxi
    KingBillSame
        6
    KingBillSame  
       2019-04-26 19:48:55 +08:00 via Android
    心跳包
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2919 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 14:41 · PVG 22:41 · LAX 06:41 · JFK 09:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.