-- 定义一个工具集tq_util
local tq_util = {}
-- 获取主区服务器ID
-- 该函数用于确定当前服务器是否为主区服务器
-- 返回值为主区服务器ID
function tq_util.get_zserverid() --获取主区id
return getconst(0, "<$MAINTONGSERVER>")
end
-- 检查主区服务器是否存在
-- 返回值为布尔类型,存在返回true,不存在返回false
function tq_util.check_isexsit()
if tq_util.get_zserverid() == 0 then
return false
else
return true
end
end
-- 检查主区服务器是否在线
-- 该函数用于触发对主区服务器的在线检查
function tq_util.check_zserver_online()
checktongsvr(tq_util.get_zserverid())
end
-- 获取主区服务器的在线状态
-- 返回值为布尔类型,在线返回true,离线返回false
function tq_util.get_zserver_status( )
if getsysvar("A200") == "在线" then
return true
else
return false
end
end
-- 同步文件到所有区
-- 参数remote_file为远程文件路径,local_path为本地文件路径(可选)
-- 如果未提供local_path,则文件将使用相同路径
function tq_util.rsync_tq_file(remote_file, local_path)
if not local_path then
updatetongfile(remote_file)
return
end
updatetongfile(remote_file, local_path)
end
-- 从主区拉取文件
-- 参数local_path为本地文件路径,remote_path为远程文件路径
-- 该函数用于从主区服务器获取文件,并保存到指定的本地路径
function tq_util.pull_zserver_file(local_path, remote_path)
local main_server_id = tq_util.get_zserverid()
getmaintongfile(main_server_id, local_path, remote_path)
end
-- 更新主区文件
-- 参数remote_file为远程文件路径,local_path为本地文件路径(可选)
-- 如果未提供local_path,则文件使用默相同路径
function tq_util.update_main_tq_file(remote_file, local_path)
local main_server_id = tq_util.get_zserverid()
if not local_path then
updatemaintongfile(main_server_id, remote_file)
return
end
updatemaintongfile(main_server_id, remote_file, local_path)
end
return tq_util