第五十三章 IRIS 中的 Web 网关注册表

64 阅读2分钟

第五十三章 IRIS 中的 Web 网关注册表

Web Gateway 注册表向 IRIS 注册每个连接的 Web Gateway 安装,并提供基础结构以允许 IRIS 代码与这些安装交互(以清除缓存等)。此类以编程方式控制的交互可能包括读取和修改 Web Gateway 的运行时配置以及收集系统状态和日志信息。相关类如下:

%CSP.Mgr.GatewayRegistry (The Gateway Registry)
%CSP.Mgr.GatewayMgr  (A Connected Gateway)

以下代码列出了所有已连接(即活动)的 Web Gateway 安装,并将 Web 服务器 IP 地址、端口和 Web Gateway 内部版本号写入控制台窗口。

Set reqistry = $system.CSP.GetGatewayRegistry()
Set gateways = reqistry.GetGatewayMgrs()
For no=1:1:gateways.Count() {
     Set gateway = gateways.GetAt(no)
     Write !,no, " : "
     Write gateway.IPAddress,":",gateway.Port," ",gateway.Version
}

IRIS 首次启动时,此列表为空。随着管理员和用户活动的增加,预计至少会出现两个条目:一项用于服务管理门户的专用 Web 服务器,至少一项用于支持应用程序的外部 Web 服务器。

可以找到与上面列出的类相关的更多文档。下面是一些代码示例来说明常见任务。

列出默认参数

Kill defaults
Do gateway.GetDefaultParams(.defaults)
ZWrite defaults

更新默认参数

Kill newpars
Set newpars("Server_Response_Timeout")=30
Do gateway.SetDefaultParams(.newpars)

列出服务器

Set status = gateway.GetServers(.servers)
For no=1:1:$ListLength(servers) {
     Set server = $List(servers,no)
     Write !,no, " : ",server
}

列出服务器参数

Kill serverpars
Do gateway.GetServerParams("LOCAL",.serverpars)
ZWrite serverpars

更新服务器参数

Kill newpars
Set newpars("Maximum_Server_Connections")=250
Do gateway.SetServerParams("LOCAL",.newpars)

列出应用程序路径

Set status = gateway.GetApplicationPaths(.paths)
For no=1:1:$ListLength(paths) {
     Set path = $List(paths,no)
     Write !,no, " : ",path
}

列出应用程序参数

Kill pathpars
Do gateway.GetApplicationParams("/csp",.pathpars)
ZWrite pathpars

更新应用程序参数

Kill newpars
Set newpars("GZIP_Compression")="Enabled"

Clear Gateway cache

Do gateway.ClearCache("*")

强制 Web 网关重新加载其配置

有时 Web Gateway 的配置会被外部代理(即 Web Gateway 自己的系统管理套件以外的代理)修改。

有两种方法可以交互地指示 Web Gateway 重新加载其配置,并且不需要完全重新启动。

使用 IRIS Web 网关注册表

提供以下注册方法:

Set status = %CSP.Mgr.GatewayMgr.ActivateCSPIni()

成功调用后,Web Gateway 会读取其配置文件并激活所做的所有更改。

使用 IRIS 外部的脚本

脚本应将以下行(区分大小写)添加到修改后的 Web Gateway 配置文件的 SYSTEM 部分:

[SYSTEM]
RELOAD=1

Web Gateway 看守守护程序大约每分钟检查一次 RELOAD 标志,如果设置正确,则重新加载并重新激活其配置并从文件中删除该标志。成功重新加载操作后,以下消息将写入事件日志:

Gateway Management 
Gateway Configuration Reloaded and Reactivated