由于各种原因,随着访问的增加以及时间的流逝,NTYSRV 内部可能出现不稳定或者内存不断累积的现象。这些情况短期内并不会直接导致程序崩溃而触发监测系统的重启命令,久而久之就会出现资源占用过高导致系统效率严重下降甚至死机问题。因此,可通过服务器自动重启功能设置 NTYSRV 的自动重启条件,及时强制释放所占用的资源,来达到长期总体稳定运行的目的。默认情况下该功能已启用。
下文所列配置值均为默认值。
找到并打开服务器系统根目录下的文件“Restart.ini”,根据提示进行修改。此 INI 文件可以保存到服务器系统根目录下,也可保存到“Pool”文件夹下的相应服务器文件夹中。
[General]
Restart=1
; 是否启用 NTYSRV 自动重启功能。填 0(禁用)或 1(启用)
[Condition]
RequestSize=15
; 请求数据的累积大小,单位 MB,填 0 代表忽略此项
RequestCount=1500
; 累计请求次数,填 0 代表忽略此项
FreeTime=20
; 服务器空闲时间,单位秒。必须大于 0,否则等同于未启用自动重启功能
ForceRequestSize=25
; 将导致强制重启的请求数据累积大小,单位 MB,填 0 代表忽略此项
ForceRequestCount=2500
; 将导致强制重启的累计请求次数,填 0 代表忽略此项
ForceWaitTime=10
; 服务器强制重启的等待时间,单位秒。若设为 0 则在满足强制重启条件后立即重启
其中,RequestSize
与 RequestCount
必须至少其中一个大于 0,否则等同于未启用自动重启功能。
同样,ForceRequestSize
与 ForceRequestCount
必须至少其中一个大于 0,否则等同于未启用自动重启功能。
通常来说一个普通的 GET 请求数据只有 0.5 KB 左右大小,但 POST 请求携带的实体往往十分巨大。若启用了 POST 方法调用动态链接库 功能,则需合理设置 RequestSize
值,避免过小导致频繁重启。
请求数据的累积大小或累计请求次数其中之一达成条件后会开始空闲时间计时。在指定的空闲时间内若无更多请求出现,将重新启动此编号的服务器程序。此时如果有新的请求出现或者某请求处理完成,将会重置计时器。
当请求数据过大或次数过多、达到强制重启条件时,程序将在 ForceWaitTime
指定的秒数后立即重启服务器,且不受请求数据影响。这将导致请求处理中断。
自动重启服务器时不会有任何窗口或托盘提示框出现。