Chinaunix首页 | 论坛 | 博客
  • 博客访问: 180380
  • 博文数量: 28
  • 博客积分: 30
  • 博客等级: 民兵
  • 技术积分: 954
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-21 10:28
个人简介

站在巨人的肩膀是骗人的

文章分类

全部博文(28)

文章存档

2013年(28)

分类: C/C++

2013-03-09 10:10:03

----------------------------------------------------------------------------------------------------------------------------------------------------------------------
服务器体系结构图:




----------------------------------------------------------------------------------------------------------------------------------------------------------------------
客户端交互LoginServer获取Gateway连接信息的时序:


Client                                    LoginServer                            CenterServer                           GatewayServer
    |            (UserID, ServerID)           |                                       |                                        |
    | ----------------LoginReq--------------->|                                       |                                        |
    |                                        Auth              (UserID)               |                                        |
    |                                         | -------------UserLoginReq-----------> |                                        |
    |                                         |                                   Get Best Gateway                             |
    |                                         |                                       |                                        |
    |                                         |                                   CreateUser                                   |
    |                                         |                                       |                                        |
    |                                         |                                   SetUserState(WantLogin)                      |
    |                                         |                                       |                                        |
    |                                         |                                   Gen CryptoCode                               |
    |                                         |                                       |                                        |
    |                                         |       (Gateway Info, CryptoCode)      |                                        |
    |                                         |<-------------UserLoginAck-------------|                                        |
    |       (Gateway Info, CryptoCode)        |                                       |           (UserID, CryptoCode)         |
    |<---------------LoginAck-----------------|                                       |-------------UserWantLoginNtf---------->|
    |                                         |                                       |                                        |
    |                                         |                                       |                                   Create ClientObject(UserID, CryptoCode)
    |                                         |                                       |                                        |
    |                                         |                                       |                                   Waiting For Client(UserId, CryptoCode) Connect
    |                                         |                                       |                                        |




----------------------------------------------------------------------------------------------------------------------------------------------------------------------
客户端连接到Gateway后验证的时序:(网关结点要做到尽可能少的分配服务器资源)


Client                                  GatewayServer
    |          (UserID, CryptoCode)          |
    |---------------ConnectReq-------------->|
    |                                      On Accept
    |                                        |
    |                                      Auth(UserID, CryptoCode)
    |                                        |
    | <-------------ConnectAck---------------|
    |                                        |
Connect Success                              |
    |                                        |




----------------------------------------------------------------------------------------------------------------------------------------------------------------------
客户端真正登录游戏的时序:


Client                                   CenterServer                            GameServer                              DBServer
    |                                         |                                      |                                      |
    |--------------------------------------------------------EnterGameReq-------------------------------------------------> |
    |                                         |                                      |                                      |
    |                                         |                                      |                                   Register[UserID, GatewayID]
    |                                         |                                      |                                      |
    |                                         |                                      |                                   User Data Exist?(LRU)
    |                                         |                                      |                                      |
    | <------------------------------------------------------EnterGameAck-------------------------------------------------->|
    |                                         |                                      |                                      |


阅读(2654) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~