版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

介绍

进程管理器是eview的必配工具

  • 程序名称:pkservermgr
  • 位置:eview-server\bin
  • 配置文件:config/pkservermgr.xml

主要功能

  • 启动所有eview必须启动的进程
  • 关闭所有eview需要关闭的进程
  • 注册为windows服务
  • 注销为windows服务

启动方式

  • 双击eview-server\bin\pkservermgr.exe
  • 当已注册为windows服务后
    • 注册为服务后,开机运行
    • 或者在windows服务管理器中手工启动和停止

配置文件主要参数

样例:

<?xml version="1.0" encoding="GB2312" standalone="yes" ?>
<Servers CheckPeriod="30" desc="AutoRestart;DelaySec(seconds);ShowConsole;ExeName,ExeDir;StartCmd;StopCmd;DelaySec;Exclude;RestartAt:Day=1/1;Hour=*;Minute=*">

...

<!-- <Exclude ExeName="modbustcp"/> -->

</Servers>

参数说明

  • Servers节点:
    • CheckPeriod:定时检测本进程管理器管理的所有进程(下面Server节点)的周期,单位:秒。
      • AutoRestart为1的情况下,如果进程异常停止或被手工关闭,则自动启动该进程节点
  • Server节点
    • Name:显示在服务管理器上的名称
    • ExeName:启动程序名称,以及检测程序是否已经启动的标准
      1. 作为检测程序是否启动的检验字符串。
        • 检测方法是启动参数中,需要包含这个字符串。
        • 可以用空格隔开多个字符串,则启动参数中,必须同时包含这几个字符串则表示程序已经启动
      2. 作为启动程序的名称
        1. 当StartCmd为空字符串时,表示启动的程序名称,windows下为,如:pkmemdb.exe
        2. 当StartCmd不为空,不做为启动程序的名称,仅表示检测程序是否已经启动的标准
    • ExeDir:进程启动的当前目录
      • 当不为空时,表示该目录为程序启动的当前目录
      • 为空,表示程序启动的当前目录为bin目录
    • StartCmd:启动脚本的命令。往往是脚本命令,windows下为xxxx.bat,linux下是xxxx.sh
      • 不为空时,ExeName不做为作为启动进程名称,本脚本才作为启动进程的程序
    • StopCmd:停止脚本的名称。用于非本系统自带进程,可能需要。下述情况需要使用,且应写入正常的停止StartCmd的脚本:
      • 有些非eview的进程强制停止会异常
      • 或者导致数据丢失
      • 或者下次无法启动
    • DelaySec:启动前延迟时间,单位秒。0或空表示无延迟
    • RestartAt:定时重启本进程的时间。类似cron表达式,能够在指定日,指定小时和分钟重启进程。示例:RestartAt:Day=1/1;Hour=0;Minute=0。Day和Hour、Minute参数意义如下:
      • 参数X/Y。X表示:X表示起始时间开始触发,然后每隔固定时间Y触发一次
        • Day=1/3,表示1号开始触发,每3天触发一次
      • 参数*,表示匹配该域的任意值。假如在Minutes域使用*, 即表示每分钟都会触发事件
        • Hour=*,表示每小时都触发
        • Minute=*,表示每分钟都触发
      • 参数X。X表示起始时间触发
        • Hour=3,表示每天凌晨3点触发1次
      • 示例:
        • Day=1/1;Hour=1;Minute=5   每天凌晨1点5分触发一次
    • ShowConsole:是否显示控制台黑窗口。1表示显示,0表示不显示
    • AutoRestart:程序被关闭或异常终止后,是否自动启动
      • 如果为1,则检查周期为Servers节点的CheckPeriod(未配置为30秒)。当到周期检查时,发现进程未启动(通过本节点的ExeName检测,见上面ExeName节点描述),则会启动
    • Enable:为1表示启动本进程,为0则表示不启动本进程
    • auto_generate:是否自动生成
      • 为1表示由插件自动创建,会在服务管理器启动时,先删除奔向,再有插件生成
      • 缺省值为0
      • 为0表示不自动生成,根据本配置加载参数和启动程序
    • StartFirst:是否在启动进程管理器后,且由插件参数生成前,启动该程序
      • 1(缺省值为1),表示在启动进程管理器后,且由插件参数生成前,启动该程序
      • 0,表示插件参数生成后再启动本程序
      • 对于有些程序,如关系数据库mysql启动,因为插件需要读取该数据库,必须将该值设为1,且顺序放到前面
    • WaitDBSecAfterStart:启动后,等待数据库连接(配置在config/db.conf中)前的等待超时秒数。如果连接成功,则立即返回
    • DelaySecAfterStart:启动后的延时时间
  • Exclude:进程管理器排除在外,不需要启动的进程
    • 如果某个进程需要调试,不想自动启动,则可将Server节点名字改为Exclude,进程就不会被自动生成,也不会被启动
    • 该节点的进程,可以通过手工启动。此时,进程管理器也不会启动或停止该进程 
    • 节点参数和Server节点相同。
    • 示例:<Exclude ExeName="modbustcp"/>