list_server
简介
目录服务器入口文件
当作为独立的服务器启动时,必须指定本文件为启动脚本(/e)
当作为pkg嵌入其它服务器时,必须先通过接口(set_embedded_mode)设置为嵌入模式,再调用pkg的初始化接口(list_server.setup)
组件接口
ping.gs
网络会话命令处理对象 - ping
| 函数原型 | 函数作用 |
|---|---|
| void main(object session, map msg) | 命令处理函数 |
common.gs
主模块入口文件
| 函数原型 | 函数作用 |
|---|---|
| void boot() | 执行主模块启动操作 |
| void shutdown() | 执行主模块关闭操作 |
FObHash.gs
为对象绑定一个固定的随机值的组件
| 函数原型 | 函数作用 |
|---|---|
| int get_hash() | 获取本对象绑定的固定的随机值 |
FSessionCmd.gs
执行网络会话命令的处理器对象的基础组件
包含本组件的对象必须实现一个public mixed main(object conn, ...)方法
| 函数原型 | 函数作用 |
|---|---|
| string cmd_name() | 获取命令名称 |
| map SUCCESS(mixed cookie, map result = ) | 新建一个成功结果 |
| map FAILURE(mixed cookie, map result = ) | 新建一个失败结果 |
delayd.gs
提供延迟执行的功能模块
| 函数原型 | 函数作用 |
|---|---|
| void delay_invoke(float seconds, function func) | 延迟执行(自动根据时间选择延迟精度) |
| void delay_invoke_high(float seconds, function func) | 延迟执行(高精度) |
| void delay_invoke_low(float seconds, function func) | 延迟执行(低精度) |
auth.gs
提供令牌认证功能的模块
| 函数原型 | 函数作用 |
|---|---|
| bool auth_token(string token) | 认证一个令牌 |
config.gs
全局配置模块
| 函数原型 | 函数作用 |
|---|---|
| void init(string config_file) | 初始化全局配置 |
| mixed get(string path) | 获取配置信息 |
mongo.gs
mongodb数据库操作模块
| 函数原型 | 函数作用 |
|---|---|
| void start() | 启动 |
| bool is_enabled() | 是否已经启动本模块 |
| object find_client(string name) | 根据指定的mongo数据库名称获取mongo客户端对象 |
mysql.gs
mysql数据库操作模块
| 函数原型 | 函数作用 |
|---|---|
| void start() | 启动 |
| bool is_enabled() | 是否已经启动本模块 |
| mixed eval(string script_name, ...) | 执行指定名称的数据库操作脚本 |
| void dump() | 调试接口 - 输出所有数据库操作脚本的 调试信息 |
| void clear_stat() | 清空所有数据库操作脚本的统计信息 |
netd.gs
目录服务器的网络功能模块
| 函数原型 | 函数作用 |
|---|---|
| void start_listen(int port) | 监听指定端口 |
| void stop_listen() | 停止监听 |
| bool is_enable_debug() | 是否启用调试 |
Session.gs
网络会话对象
| 函数原型 | 函数作用 |
|---|---|
| bool is_connected() | 是否已连接 |
| void bind_connection(object conn) | 绑定网络连接 |
| object unbind_connection() | 解绑网络连接 |
| void transfer_connection(object to) | 将当前持有的网络连接对象转移给目标网络会话对象 |
| bool is_out_of_life() | 本会话是否超过生命周期 |
| bool auto_close() | 尝试关闭本会话对象 |
| void send(string cmd, map msg) | 发送消息 |
redis_data.gs
redis数据库操作模块
操作的目标数据库在全局配置文件的redis_database字段和redis_dbs字段中指定
internal_add_account_cache.gs
网络会话命令处理对象 - 添加账号缓存
| 函数原型 | 函数作用 |
|---|---|
| void main(object session, map msg) | 命令处理函数 |
internal_add_server_to_balance_group.gs
网络会话命令处理对象: 添加服务器到平衡组
| 函数原型 | 函数作用 |
|---|---|
| void main(object session, map msg) | 命令处理函数 |
internal_get_all_gs.gs
网络会话命令处理对象 - 获取所有已连接的服务器的状态
| 函数原型 | 函数作用 |
|---|---|
| void main(object session, map msg = ) | 命令处理函数 |
internal_get_server_field_values.gs
网络会话命令处理对象 - 列出服务器列表中某个字段正在使用的所有取值(返回的取值不重复)
| 函数原型 | 函数作用 |
|---|---|
| void main(object session, map msg) | 命令处理函数 |
internal_remove_account_cache.gs
网络会话命令处理对象 - 移除账号缓存
| 函数原型 | 函数作用 |
|---|---|
| void main(object session, map msg) | 命令处理函数 |
internal_update_account_cache.gs
网络会话命令处理对象 - 更新账号缓存
| 函数原型 | 函数作用 |
|---|---|
| void main(object session, map msg) | 命令处理函数 |
internal_update_gs.gs
网络会话命令处理对象 - 更新服务器信息
| 函数原型 | 函数作用 |
|---|---|
| void main(object session, map msg) | 命令处理函数 |
account_cached.gs
维护账号缓存的功能模块
| 函数原型 | 函数作用 |
|---|---|
| mixed eval(string name, ...) | 执行指定名称的脚本 |
| void debug_clean() | 调试接口 - 清楚账号缓存表 |
| void add_cache(string account_id, string server_id, string rid, map info) | 添加账号角色信息缓存 |
| void remove_cache(string server_id, string rid) | 移除账号角色信息缓存 |
| void update_cache(string account_id, string server_id, string rid, map info) | 更新账号角色信息缓存 |
| array query_caches(string account_id, mixed server_id = nil) | 查询指定服务器上的指定账号的所有角色信息缓存 |
server_balanced.gs
维护平衡组的功能模块
| 函数原型 | 函数作用 |
|---|---|
| void notify_refresh() | 通知同步更新平衡组信息 |
| bool begin_modify() | 获取修改平衡组的锁(尝试开始修改) |
| void finish_modify() | 释放修改平衡组的锁(结束修改) |
| map get_all_groups() | 获取所有平衡组信息 |
| array get_last_sync_info() | 调试接口 - 获取最近一次同步信息 |
| bool debug_init_group(string group_id = "debug", string category = "debug", int server_count = 3) | 调试接口 - 初始化一个平衡组 |
| void debug_delete_group(string group_id = "debug") | 调试接口 - 删除一个平衡组 |
| array get_group_by_server_id(string server_id) |