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); }