GS界面上显示的重要参考数据

GS界面上显示的重要参考数据,这个是压测时重要参考
struct GSinfo
{
    int revBuffNum;
    int sendBuffNum;
    int clientNum;

    int dbAskNum;        ///< 数据库请求包数
    int dbHrNum;        ///< 数据库结果包数
};

void __stdcall GameServer::get_info(GSinfo& rGsInfo)
{
    rGsInfo.clientNum = m_LiveMgr.GetLinks();//这个是Mgr里面的当前链接数,既当前有多少玩家在线
    //sendBuffNum,发送缓冲区队列大小,GS(B)->NET(A),如果这个数据比较大,就说明NET即网络处理不过来GS发过去的数据
    //revBuffNum 接收缓冲区大小,A(NET)->GS(B)如果这个数据比较大,说明GS处理不过来,具体可以说是map处理不过来了
    m_spDataLayer->GetBufferNum(rGsInfo.sendBuffNum, rGsInfo.revBuffNum);
    //dbAskNum,这个是数据库命令队列的大小,表示当前数据库当前还有多少命令没有处理,从这个可以看到数据库处理压力大小
    //dbHrNum,这个是响应队列的大小,是数据库已经访问数据库完毕,但GS这边线程还没有回调,如果GS线程比较高的时候,这个数据也会增长的
    m_spAsynDBC->SynGetDBPktNum(rGsInfo.dbAskNum, rGsInfo.dbHrNum);
}

 

posted @ 2014-11-23 18:30  zzyoucan  阅读(311)  评论(0编辑  收藏  举报