|
%%% -------------------------------------------------------
|
|
%%% @author huangyongxing@yeah.net
|
|
%%% @doc
|
|
%%% 游戏服在跨服中心的注册管理功能相关数据结构定义等
|
|
%%% @end
|
|
%%% -------------------------------------------------------
|
|
-ifndef(CENTER_SVR_REG_HRL).
|
|
-define(CENTER_SVR_REG_HRL, ok).
|
|
|
|
%% 跨服中心游戏服信息注册管理
|
|
%% -------------------------------------------------------
|
|
%% center_reg_svr表
|
|
-define(SQL_SELECT_REG_SVR,
|
|
<<"SELECT `server_id`,`server_num`,`svr_cid`,`m_server_ids`,`open_time`,`time` FROM center_reg_svr">>).
|
|
-define(SQL_REPLACE_REG_SVR_PREFIX,
|
|
<<"REPLACE INTO center_reg_svr (`server_id`,`server_num`,`svr_cid`,`m_server_ids`,`open_time`,`time`)">>).
|
|
-define(SQL_SELECT_MAX_SVR_CID,
|
|
<<"SELECT MAX(`svr_cid`) FROM center_reg_svr WHERE svr_cid >= ~w AND svr_cid <= ~w">>).
|
|
|
|
%% center_svr_cid表
|
|
-define(SQL_SELECT_REG_CNT,
|
|
<<"SELECT reg_cnt FROM center_svr_cid WHERE center_id = ~w">>).
|
|
-define(SQL_REPLACE_REG_CNT,
|
|
<<"REPLACE INTO center_svr_cid (`center_id`,`reg_cnt`) VALUES (~w,~w)">>).
|
|
|
|
%% center_svr_base表
|
|
-define(SQL_REPLACE_SVR_BASE_PREFIX, <<"REPLACE INTO `center_svr_base` (`server_id`,`server_num`,`server_name`)">>).
|
|
-define(SQL_SELECT_SVR_BASE, <<"SELECT `server_id`,`server_num`,`server_name` FROM `center_svr_base`">>).
|
|
|
|
%% -------------------------------------------------------
|
|
|
|
%% ETS表,提供游戏服资料,供其他地方查询使用
|
|
-define(ETS_REG_SVR_INFO, ets_reg_svr_info). % 跨服中所有已注册游戏服的资料(被合并的服需要查主服)
|
|
-define(ETS_ALL_SVR_BASE, ets_all_svr_base). % 跨服中所有游戏服的服务器名的基本资料(包括已被合并的服)
|
|
|
|
%% 注册信息检查保存及重试的延迟时间
|
|
-define(REG_DB_TIMER_DELAY, 120 * 1000).
|
|
-define(SVR_BASE_DB_TIMER_DELAY, 120 * 1000).
|
|
|
|
%% 注册管理服务进程状态
|
|
-record(svr_reg_proc_state, {
|
|
reg_svr_list = [], % 注册服列表(含预注册,不包含已被合并的服)
|
|
reg_cnt = 0, % 当前已注册序号
|
|
reg_svr_need_saved = [], % 注册服需要保存数据
|
|
svr_base_need_saved = [] % 游戏服基础信息需要保存的数据
|
|
}).
|
|
|
|
%% 跨服中心已注册服务器信息
|
|
-record(reg_svr, {
|
|
server_id = 0 % 游戏服id
|
|
,server_num = 0 % 游戏服编号
|
|
,svr_cid = 0 % 游戏服的全部跨服唯一id(0为未正式注册)
|
|
,m_server_ids = [] % 已合并的游戏服id(包含主服id)
|
|
,open_time = 0 % 开服时间
|
|
,time = 0 % 数据更新时间(发生变化,例如合服更新)
|
|
}).
|
|
|
|
%% 跨服中心注册过的服的基本信息
|
|
%% 包含全部连接过该跨服的数据
|
|
-record(svr_base, {
|
|
server_id = 0 % 游戏服id
|
|
,server_num = 0 % 游戏服编号
|
|
,server_name = <<>> % 游戏服名称
|
|
}).
|
|
|
|
-endif.
|