专利名称:一种服务器进程启停方法、装置及系统的制作方法
技术领域:
本发明是关于服务器进程控制技术,具体的讲是关于一种服务器进程启停方法、 装置及系统。
背景技术:
在银行等领域的应用系统中,通常要用到大量的应用服务器(如websphere)来支 撑日常的业务系统。现有技术中,这些应用服务器进程的启停操作通常是通过执行服务器 下的wsadmin. sh调用脚本来完成,这种启停方式下的脚本有jacl和jython两种,jacl和 jython需要启停的server (应用名)和node (节点名)都写在脚本中。在开发人员和运维 人员分离的模式下,如果新增服务器,必然面临着修改程序版本的问题。对于每个物理服务 器下相同应用的server名相同的情况,可以在脚本中使用for循环实现,但是对于使用了 集群的应用,server名称没有规律,则无法通过for循环实现,必须一行行的脚本实现,这 样程序和数据就完全混合在一起。并且,由于jacl及jython是脚本语言,只是用来封装启停操作的函数和数据,将 封装好的脚本提交给wsadmin. sh执行,没有可以获取操作系统运行状态的函数,也无法根 据现有的语法规则组装出获取运行环境的状态信息的函数,这样应用程序就无法对启动的 进程进行检测,进而无法控制启动制定数目的进程,通常需要把所有定义的server全部启 动起来,但在server较多的情况下会导致dmgr (节点管理进程)压力过大而宕机。因此, 在jacl或者jython脚本中无法有效的实现并发控制。另外,由于具体的启停信息是在脚本中完成,对于异常处理的要求非常高,所以必 须在脚本中进行异常处理,这就导致脚本的代码量很大,而且不便于定位是哪一个server 进程发生了问题。当某个或者某几个服务器发生异常需要重新执行的时候,由于现有模式 没有对服务器状态进行判断,会导致重复执行,从而增加了整个启停操作的耗时。
发明内容
本发明提供一种服务器进程启停方法、装置及系统,以避免增减服务器时修改应 用启停程序,避免给服务器较大的压力,减少整个启停操作的耗时。为了实现上述目的,本发明提供一种服务器进程启停方法,该方法包括步骤A、 创建服务器进程配置文件并保存所述的服务器进程配置文件;步骤B、顺序读取配置文件 中的待处理记录;步骤C、检验读取的所述待处理记录是否存在对应的服务器进程;步骤D、 如果存在,获取所述服务器进程的状态属性,并判断读取的所述待处理记录中的启停参数 与所述的状态属性是否一致;步骤E、如果不一致,根据所述的启停参数对所述的服务器进 行启停操作。进一步地,在检验读取的所述待处理记录是否存在对应的服务器进程之前,所述 的方法还包括查询现有会话中已启动的启停程序进程数,并将所述的启停程序进程数与 存储的并发参数进行比较,如果所述的启停程序进程数小于所述并发参数,进行步骤C。
进一步地,在保存所述的服务器进程配置文件之前,所述的方法还包括判断所述 服务器进程配置文件的存储目录是否存在;如果否,创建存储目录。进一步地,在步骤A之后,所述的方法还包括判断日志文件目录是否存在;如果 否,创建日志文件目录。进一步地,在步骤B之前,所述的方法还包括判断是否存在待处理的记录。进一步地,所述步骤B具体包括判断所述待处理记录中是否包含应用名、节点、 用户名、密码及启停参数五个要素;如果是,将所述待处理记录分割为5个域,并将所述5个 域中的信息解析为5个要素;对所述的5个要素信息进行解密。进一步地,如果读取的所述待处理记录中的启停参数与所述的状态属性一致或者 所述的状态属性为异常,将所述待处理记录中的要素及所述的状态属性写入所述的日志文 件中。进一步地,在步骤E之后,将启停操作返回的信息写入到日志文件中,并重复步骤 B至步骤E。为了实现上述目的,本发明提供一种服务器进程启停装置,该装置包括文件创建 单元,用于创建服务器进程配置文件并保存所述的服务器进程配置文件;记录读取单元,用 于顺序读取配置文件中的待处理记录;进程检验单元,用于检验读取的所述待处理记录是 否存在对应的服务器进程;判断单元,用于获取所述服务器进程的状态属性,并判断读取的 所述待处理记录中的启停参数与所述的状态属性是否一致;启停操作单元,用于根据所述 的启停参数对所述的服务器进行启停操作。进一步地,该装置还包括进程数查询单元,用于查询现有会话中已启动的启停程 序进程数;比较单元,用于将所述的启停程序进程数与存储的并发参数进行比较。进一步地,该装置还包括存储目录判断单元,用于判断所述服务器进程配置文件 的存储目录是否存在;存储目录创建单元,用于创建存储目录。进一步地,该装置还包括日志文件目录判断单元,用于判断日志文件目录是否存 在;日志文件目录创建单元,用于创建日志文件目录。进一步地,所述的装置还包括记录判断单元,用于判断是否存在待处理的记录。进一步地,所述的记录读取单元包括要素判断模块,用于判断所述待处理记录中 是否包含应用名、节点、用户名、密码及启停参数五个要素;要素处理模块,用于将所述待处 理记录分割为5个域,并将所述5个域中的信息解析为5个要素;要素解密模块,用于对所 述的5个要素信息进行解密。进一步地,所述的装置还包括日志写入单元,当读取的所述待处理记录中的启停 参数与所述的状态属性一致或者所述的状态属性为异常时,用于将所述待处理记录中的要 素及所述的状态属性写入所述的日志文件中。进一步地,所述的日志写入单元还用于将启停操作返回的信息写入到日志文件 中。为了实现上述目的,本发明提供一种服务器进程启停系统,该系统包括信息编 辑服务器,信息存储服务器,信息读取服务器,并发执行服务器,异常处理服务器及多个应 用服务器;所述的信息编辑服务器与信息存储服务器相连接,所述的信息存储服务器与信 息读取服务器相连接,所述的信息读取服务器与并发执行服务器相连接,所述的并发执行服务器与异常处理服务器相连接,所述的并发执行服务器通过内部网络与应用服务器相连 接;所述的信息编辑服务器用于编辑服务器进程配置文件;所述的信息存储服务器用于存 储服务器进程配置文件及日志文件;所述的信息读取服务器用于读取配置文件中的待处理 记录;所述的并发执行服务器用于根据并发参数启动指定数量的所述应用服务器的启停进 程;所述的异常处理服务器用于记录所述应用服务器启停进程信息。进一步地,所述的信息编辑服务器包括信息创建装置,用于创建服务器进程配置 文件;信息校验装置,与所述的信息校验装置相连接,用于检验所述服务器进程配置文件的 要素是否齐全;信息格式化装置,与所述的信息创建装置相连接,用于将所述的服务器进程 配置文件转化为系统识别的格式。进一步地,所述的信息存储服务器包括目录管理装置,用于对服务器进程配置文 件及日志文件进行存放管理;信息保存装置,与所述的目录管理装置相连接,用于对服务器 进程配置文件及日志文件进行存储;信息清理装置,与所述的信息保存装置相连接,用于定 期对文件大小进行检测,并在日志文件达到上限后对日志文件进行清理。进一步地,所述的信息读取服务器包括格式验证装置,用于检验所述服务器进程 配置文件的格式及要素;信息读取装置,用于从所述服务器进程配置文件中顺序读取配置 文件中的待处理记录;信息解析装置,与所述的信息读取装置相连接,用于将所述待处理记 录分割为5个域,并将所述5个域中的信息解析为5个要素;信息传送装置,与所述的信息 解析装置相连接,用于将所述的5个要素传递给所述的并发执行服务器。进一步地,所述的并发执行服务器包括并发调度装置,用于根据并发参数启动指 定数量的所述应用服务器的启停进程,并监视所述启停进程的运行状态;应用状态检验装 置,与所述的并发调度装置相连接,用于检验所述待处理记录对应的应用服务器的进程状 态,并判断执行启停操作还是跳过;密码解密装置,与所述的应用状态检验装置相连接,用 于对所述的5个要素进行解密;启停操作装置,与所述的密码解密装置相连接,用于获取所 述待处理记录对应的应用服务器的进程状态,并对所述应用服务器进行启停操作。进一步地,所述的异常处理服务器包括开始日志记录装置,用于将每个应用服务 器启停程序调度的起始时间记录到总日志中;状态验证日志记录装置,用于记录所述应用 状态检验装置信息,并将返回的所述信息写入状态验证日志;解密日志记录装置,用于记录 所述密码解密装置返回的解密成功或失败信息;异常处理装置,用于将每个应用服务器启 停操作返回的成功、失败或异常信息记录到异常日志中;日志解析装置,与所述的相连接异 常处理装置,用于解析所述的异常日志,并根据启停操作执行的关键字匹配是否出现错误 或异常;结果日志记录装置,用于将所述解析所述的异常日志的信息记录到总日志中。进一步地,如果所述的5个要素不齐全,所述的格式验证装置还用于将要素不齐 全信息记录到异常日志中。本发明实施例的有益技术效果在于,本发明实现了服务器信息与启停程序的分 离,不需要将应用服务器的server和node名称直接固化在程序中,从而避免了现有技术中 增减服务器的时需要修改应用启停程序的问题。由于在进程的启动和运行中间对进程的状 态进行检测,可以实现指定数目的并发控制,即可以按照从配置文件中获取的并发参数进 行启动,既避免给服务器较大的压力,又可以由于多进程运行而减少整个启停操作的耗时。 同时该系统实现了自动化操作,可以在执行的时间自动运行。由于有完整的日志和异常处理,便于问题的分析和定位。在重复执行启停操作的时候,本发明可以预先判断server的 状态,可以避免对一个服务器进行重复启动或者停止操作,节约了启停操作的运行时间。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可 以根据这些附图获得其他的附图。在附图中图1为本发明实施例服务器进程启停系统的结构示意图;图2为本发明实施例信息编辑服务器的结构框图;图3为本发明实施例配置文件的组成要素示意图;图4为本发明实施例信息存储服务器的结构框图;图5为本发明实施例信息读取服务器的结构框图;图6为本发明实施例并发执行服务器的结构框图;图7为本发明实施例异常处理服务器的结构框图;图8为本发明实施例服务器进程启停方法流程图;图9为本发明实施例服务器进程启停方法的详细流程图;图10为本发明实施例服务器进程启停装置的结构示意图;图11为本发明实施例记录读取单元的结构框图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发 明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并 不作为对本发明的限定。如图1所示,本发明实施例提供一种服务器进程启停系统,该系统包括信息编辑 服务器101,信息存储服务器102,信息读取服务器103,并发执行服务器104,异常处理服务 器105及多个应用服务器106。所述的信息编辑服务器101与信息存储服务器102相连接,所述的信息存储服务 器102与信息读取服务器103相连接,所述的信息读取服务器103与并发执行服务器104 相连接,所述的并发执行服务器104与异常处理服务器105相连接,所述的并发执行服务器 104通过内部网络与应用服务器106相连接。信息编辑服务器101可以用来编辑服务器进程配置文件。如图2所示,信息编辑 服务器101包括信息创建装置201,信息校验装置202及信息格式化装置203。另外,信息 编辑服务器101还可以包括用于输入编辑信息的输入装置(如键盘),用于显示文件信息的 显示装置等。信息创建装置201,用于创建服务器进程配置文件,并提供可编辑界面。配置文件 样例如图3所示。在图3中,node应用对应的节点、server应用名、user用户名、password 密码,action表示启停操作的参数,具体0对应启动,1对应停止。信息校验装置202,与所述的信息校验装置相连接,对用户输入的配置文件进行校
8验,检验所述服务器进程配置文件的要素是否齐全,如果不全则提示用户。信息格式化装置203,与所述的信息创建装置相连接,用于将所述的服务器进程配 置文件格式化为系统可识别的格式,如在Unix系统下需要将配置文件转化unix格式,否则 程序会读取到乱码。信息存储服务器102可以用来存储服务器进程配置文件及日志文件。如图4所示, 信息存储服务器102包括目录管理装置401,信息保存装置402及信息清理装置403。目录管理装置401对服务器进程配置文件及日志文件进行存放管理,对整个启停 操作系统的输出文本进行管理,并按照目录组织存放。对于配置文件,一般采用固定目录存 放,例如可以放在config目录下。对于各种日志文件(总日志文件,状态检验日志文件,日 志文件)按照日期组织目录,例如可以建立以“20100901”为目录名的目录,用于保存2010 年9月1日生成的各种日志。信息保存装置402与所述的目录管理装置相连接,对服务器进程配置文件及日志 文件进行存储,将系统中输出的信息保存到指定的文件中,并将这些文件保存在各自的指 定目录。信息保存装置402可以为各种存储器,如SRAM存储器、DDR存储器、CAM存储器,也 可以为U盘、硬盘等。信息清理装置403与所述的信息保存装置相连接,定期对文件大小进行检测,并 在日志文件达到存储上限后对日志文件进行清理。信息读取服务器103可以读取配置文件中的待处理记录,如图5所示,信息读取服 务器103包括格式验证装置501,信息读取装置502,信息解析装置503及信息传送装置 504。格式验证装置501打开执行的服务器进程配置文件,并检验服务器进程配置文件 的格式和要素。首先获取该文本的码制信息,确认是否是可以识别的文件格式。再打开文 件,按行读取记录,并对每行的记录按照分隔符进行切分,以检验服务器的要素是否齐全若 要素信息不齐则会在记录异常日志,并跳过该记录。配置文件的五个要素为mode应用对 应的节点、server应用名、user用户名、password密码、action启停操作参数。配置文 件每条记录的格式可以为server node user password action,分隔符可以是空格,例如 cmlp55a2c6Node01 root root 1)。如果所述的5个要素不齐全,格式验证装置501还用可 以将要素不齐全信息记录到异常日志中。信息读取装置502从所述服务器进程配置文件中顺序读取配置文件中的待处理 记录,即从指定的配置文件中顺序读取每行记录。信息解析装置503,与所述的信息读取装置相连接,用于将所述待处理记录分割为 5个域,并将所述5个域中的信息解析为5个要素。信息传送装置504,与所述的信息解析装置相连接,将所述的5个要素传递给所述 的并发执行服务器,如果传递成功则返传继续读取的指令给信息读取装置502读取下一记 录,如果失败则记录日志并提示用户。并发执行服务器104根据并发参数启动指定数量的所述应用服务器的启停进程; 如图6所示,并发执行服务器104包括并发调度装置601,应用状态检验装置602,密码解 密装置603及启停操作装置604。并发调度装置601根据并发参数启动指定数量的所述应用服务器的启停进程,并监视所述启停进程的运行状态。其中,并发参数格式类似para_nUm = 4,表示并发进程格式 为4,由系统维护人员在系统安装初始化的时候在应用服务的congfig目录下设置。并发调 度装置601启动指定数量的启停应用服务器进程,并监视这些进程的运行状态,在某个服 务进程结束后,会继续启动启停进程直到所有服务器完成操作。应用状态检验装置602,与所述的并发调度装置相连接,用于检验所述待处理记录 对应的应用服务器的进程状态,如果该应用服务器已经是启动或者停止的时候,根据要进 行的启动或者停止操作,判断是否需要继续执行还是跳过,可以有效的减少重复操作带来 的耗时。为了防止密码外泄,一般在配置文件中的密码以密文形式保存,密码解密装置 603,与所述的应用状态检验装置相连接,使用3DES算法对所述的5个要素进行解密,以方 便下一步的启停操作。启停操作装置604,与所述的密码解密装置相连接,根据传入的5个要素信息中的 启停参数获取所述待处理记录对应的应用服务器的进程状态,并对所述应用服务器进行启 停操作,并将应用服务器返回的信息输出到日志中。异常处理服务器105记录所述应用服务器启停进程信息。如图7所示,异常处理 服务器105包括开始日志记录装置701,状态验证日志记录装置702,解密日志记录装置 703,异常处理装置704,日志解析装置705及结果日志记录装置706。开始日志记录装置701将每个应用服务器启停程序调度的起始时间记录到总日 志中,总日志用于记录各个模块的起始时间和各个server的运行结果。状态验证日志记录装置702,用于记录所述应用状态检验装置信息,并将返回的所 述信息写入状态验证日志,如果状态返回信息为跳过(即当前状态已是预期状态,无需执 行指令,则跳过),则记录该应用服务器的要素信息、时间、执行跳过等信息以备日后查找分 析原因。解密日志记录装置703记录所述密码解密装置返回的解密成功或失败信息,如果 解密失败,则记入到日志中以便于事后定位问题。异常日志,用于记录各个校验步骤产生的 异吊fn息。异常处理装置704将每个应用服务器启停操作返回的成功、失败或异常信息记录 到异常日志中,该信息不止包含成功或者失败信息,还包含服务在执行时候返回的所有异 常信息。记录这些信息有助于分析服务器启停中发生的问题。日志解析装置705,与所述的相连接异常处理装置,用于解析所述的异常日志,并 根据启停操作执行的关键字匹配是否出现错误或异常。结果日志记录装置706,用于将所述解析所述的异常日志的信息记录到总日志中。异常处理服务器105不但记录了各个关键步骤的时间和关键信息,而且还能在发 生异常的时候捕获异常信息,并进行异常处理,避免因为一个应用服务器的异常导致整个 并发执行装置执行的失败。如图8所示,本发明实施例提供一种服务器进程启停方法,该方法包括创建服务 器进程配置文件并保存所述的服务器进程配置文件步骤S801 ;顺序读取配置文件中的待 处理记录步骤S802 ;检验读取的所述待处理记录是否存在对应的服务器进程步骤S803 ;如 果存在,获取所述服务器进程的状态属性,并判断读取的所述待处理记录中的启停参数与所述的状态属性是否一致步骤S804 ;如果不一致,根据所述的启停参数对所述的服务器进 行启停操作步骤S805。在检验读取的所述待处理记录是否存在对应的服务器进程(步骤S80;3)之前,该 方法还可以包括查询现有会话中已启动的启停程序进程数,并将所述的启停程序进程数 与存储的并发参数进行比较,如果所述的启停程序进程数小于所述并发参数,进行步骤C。在保存所述的服务器进程配置文件之前,该方法还可以包括判断所述服务器进 程配置文件的存储目录是否存在;如果否,创建存储目录。在步骤S801之后,所述的方法还包括判断日志文件目录是否存在;如果否,创建 日志文件目录。如果读取的所述待处理记录中的启停参数与所述的状态属性一致或者所述 的状态属性为异常,需要将所述待处理记录中的要素及所述的状态属性写入所述的日志文 件中,并返回步骤S802顺序读取配置文件中的下一条待处理记录。在顺序读取配置文件中的待处理记录(步骤SSO》之前,该方法还包括判断是否 存在待处理的记录。步骤S802具体包括判断所述待处理记录中是否包含应用名、节点、用 户名、密码及启停参数五个要素;如果是,将所述待处理记录分割为5个域,并将所述5个域 中的信息解析为5个要素;对所述的5个要素信息进行解密。顺序读取配置文件中的待处 理记录可以是逐行读取配置文件中的待处理记录,一直读到最后一行待处理记录。在步骤S805之后,需要将启停操作返回的信息写入到日志文件中,并重复步骤 S802至步骤S805。图9为本发明实施例服务器进程启停方法的详细流程图。如图9所示,该流程包 括步骤S901 信息创建装置201编辑需要启停的应用服务器进程对应的配置文件。 (配置文件中第五项要素action即启停参数,当其为0对应启动指令startServer,为1对 应停止指令stopServer)。步骤S902 信息校验装置202对配置文件进行格式校验。如果校验通过,信息校 验装置202将配置文件传递给信息保存装置402。如果校验不通过则提示用户错误信息。步骤S903 目录管理装置401判断配置文件的目录是否存在,如果不存在则建立 目录。例如congfig目录可以用于管理配置文件。步骤S904 信息保存装置402保存配置文件到指定的目录下。步骤S905:目录管理装置401判断日志文件的目录是否存在。若不存在,则读取当 天的系统日期,并以日期为目录名建立目录。例如,20100901目录用于管理各种日志文件。步骤S906 信息读取装置502判断是否有需要处理的记录,如果没有则进入步骤 S917,如果有则进入步骤S907。步骤S907 信息读取装置502逐行读取配置文件中的待处理记录。并将该条待处 理记录传递给格式验证装置501,判断服务器进程启停的五要素信息是否齐全,如果信息齐 全,则调用信息解析装置503进行解析,再调用信息传送装置504进行数据传送,进入步骤 S908。否则调用异常处理装置704将该条待处理记录的要素信息及格式验证装置501返回 的错误信息写入到日志,并跳转步骤S906。步骤S908 密码解密装置603接收信息传送装置504传递过来的要素信息,并对 加密信息进行解密。如果解密失败,则调用解密日志记录装置703将该条待处理记录的要素信息及密码解密装置603返回的错误信息写入到异常日志,并跳转步骤S906。步骤S909 并发调度装置601通过查询系统的session信息获取现有会话中已经 启动了多少个启停程序进程(如在imix系统下通过ps-ef的方式获取进程信息),再将该 数目与传入的并发参数比较。如果现有的进程数小于并发参数,则调用步骤S910,否则进入 步骤S916。步S910 密码解密装置603将解密后的要素信息传递给应用状态检验装置602。步骤S911 应用状态检验装置602搜寻该条待处理记录的要素是否已存在对应 的服务器进程。若不存在,则记录该条待处理记录的要素对应的服务器进程状态属性为 STOP (表示服务器进程停止);若存在,则获取该进程的状态属性此时有STARTED (表示服 务器进程正常运行)或EXCEPTION (表示服务器进程异常)。步骤S912 应用状态检验装置602比较状态属性与要素中的启停参数,如果一致, 表示该操作不需要进行,服务器进程状态已经是操作所预期的结果了,则进入步骤S913。状 态属性与启停参数一致的情况可以如下解析到"STARTED",启停参数为0;或者解析到 的服务器进程状态为STOP,启停参数为1。如果两者比较不一致,则跳转至步骤300。如果 解析的服务器状态为EXCEPTION,进入步骤S913。步骤S913 状态验证日志记录装置702将该条待处理记录的要素信息及其对应服 务器进程状态属性写入到状态验证日志中,并跳转到步骤S906。步骤S914 启停操作装置604根据启停参数分别完成该指令对应的服务器进程 操作,如接受到0,则向启动服务器进程命令中传入要素信息完成指定服务器进程的启动操 作。例如调用wsadmin. sh中的AdminContro 1. startServer操作,完成启动服务器操作。若 接受到1,启停操作装置604则调用AdminContro 1. stopkrver操作,完成停止服务器操作。步骤S915 异常处理装置704捕获启停指令执行后返回的信息,并将这些信息记 入到日志中。并跳转到步骤S906。步骤S916 并发调度装置601等待10秒,跳转步骤S909。以此来减少频繁检测带 来的服务器负担。步骤S917 并发调度装置601检查所有的启停进程,在所有的启停进程结束后,调 用日志解析装置705负责解析日志。日志解析装置705根据解析结果是否发生了错误或者 异常,若有则调用结果日志记录装置706将解析出来的异常或错误信息输出到总日志中, 整个启停操作完成。如图10所示,本发明提供一种服务器进程启停装置,该装置包括文件创建单元 1001,记录读取单元1002,进程检验单元1003,判断单元1004及启停操作单元1005。文件创建单元1001用于创建服务器进程配置文件并保存所述的服务器进程配置 文件。(配置文件中第五项要素action即启停参数,当其为0对应启动指令startServer, 为1对应停止指令stopServer)。进一步地,如图10所示,该服务器进程启停装置还可以包括存储目录判断单元 1006及存储目录创建单元1007,存储目录判断单元1006用于判断所述服务器进程配置文 件的存储目录是否存在;存储目录创建单元1007用于创建存储目录。创建的服务器进程配 置文件保存在创建的存储目录中,例如congfig目录可以用于管理配置文件。进一步地,如图10所示,该服务器进程启停装置还包括日志文件目录判断单元1008及日志文件目录创建单元1009,日志文件目录判断单元1008用于判断日志文件目录 是否存在,若不存在,可以利用日志文件目录创建单元1009读取当天的系统日期,并以日 期为目录名建立目录。例如,20100901目录用于管理各种日志文件。进一步地,该服务器进程启停装置还包括记录判断单元(图未示出),用于判断 是否存在待处理的记录。记录读取单元1002用于顺序读取配置文件中的待处理记录。如图11所示,记录 读取单元1002包括要素判断模块1101,要素处理模块1102及要素解密模块1103。要素 判断模块1101用于判断所述待处理记录中是否包含应用名、节点、用户名、密码及启停参 数五个要素;要素处理模块1102用于将所述待处理记录分割为5个域,并将所述5个域中 的信息解析为5个要素;要素解密模块1103用于对所述的5个要素信息进行解密。进一步地,如图10所示,该服务器进程启停装置还可以包括进程数查询单元 1010及比较单元1011。进程数查询单元1010用于查询现有会话中已启动的启停程序进程 数,比较单元1011用于将所述的启停程序进程数与存储的并发参数进行比较。通过查询系 统的session信息获取现有会话中已经启动了多少个启停程序进程(如在unix系统下通 过ps-ef的方式获取进程信息),再将该数目与传入的并发参数比较。进程检验单元1003用于检验读取的所述待处理记录是否存在对应的服务器进 程,若不存在,记录该条待匹配记录对应的服务器进程状态属性为STOP (表示服务器进程 停止)。若存在,获取该进程的状态属性此时有STARTED (表示服务器进程正常运行)或 EXCEPTION (表示服务器进程异常)。如果存在,判断单元1004用于获取所述服务器进程的状态属性,并判断读取的所 述待处理记录中的启停参数与所述的状态属性是否一致。如果一致,表示该操作不需要进 行,服务器进程状态已经是操作所预期的结果了。状态属性与启停参数一致的情况可以如 下解析到"STARTED",启停参数为0;或者解析到的服务器进程状态为STOP,启停参数为 1。进一步地,该服务器进程启停装置还包括日志写入单元(图未示出),当读取的 所述待处理记录中的启停参数与所述的状态属性一致或者所述的状态属性为异常时,日志 写入单元将所述待处理记录中的要素及所述的状态属性写入所述的日志文件中。如果两者比较不一致,启停操作单元1005用于根据所述的启停参数对所述的服 务器进行启停操作。上述日志写入单元还用于将启停操作返回的信息写入到日志文件中。该装置还包括日志解析单元及日志结果处理单元(图中未示出)。在所有的启 停进程结束后,调用日志解析单元解析日志,根据解析结果是否发生了错误或者异常,若有 则调用日志结果处理单元将解析出来的异常或错误信息输出到总日志中,整个启停操作完 成。本发明实施例的有益技术效果在于,本发明实现了服务器信息与启停程序的分 离,不需要将应用服务器的server和node名称直接固化在程序中,从而避免了现有技术中 增减服务器的时需要修改应用启停程序的问题。由于在进程的启动和运行中间对进程的状 态进行检测,可以实现指定数目的并发控制,即可以按照从配置文件中获取的并发参数进 行启动,既避免给服务器较大的压力,又可以由于多进程运行而减少整个启停操作的耗时。同时该系统实现了自动化操作,可以在执行的时间自动运行。由于有完整的日志和异常处 理,便于问题的分析和定位。在重复执行启停操作的时候,本发明可以预先判断server的 状态,可以避免对一个服务器进行重复启动或者停止操作,节约了启停操作的运行时间。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详 细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保 护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本 发明的保护范围之内。
权利要求
1.一种服务器进程启停方法,其特征在于,所述的方法包括步骤A、创建服务器进程配置文件并保存所述的服务器进程配置文件; 步骤B、顺序读取配置文件中的待处理记录; 步骤C、检验读取的所述待处理记录是否存在对应的服务器进程; 步骤D、如果存在,获取所述服务器进程的状态属性,并判断读取的所述待处理记录中 的启停参数与所述的状态属性是否一致;步骤E、如果不一致,根据所述的启停参数对所述的服务器进行启停操作。
2.如权利要求1所述的方法,其特征在于,在检验读取的所述待处理记录是否存在对 应的服务器进程之前,所述的方法还包括查询现有会话中已启动的启停程序进程数,并将所述的启停程序进程数与存储的并发 参数进行比较,如果所述的启停程序进程数小于所述并发参数,进行步骤C。
3.如权利要求1或2所述的方法,其特征在于,在保存所述的服务器进程配置文件之 前,所述的方法还包括判断所述服务器进程配置文件的存储目录是否存在; 如果否,创建存储目录。
4.如权利要求1或2所述的方法,其特征在于,在步骤A之后,所述的方法还包括 判断日志文件目录是否存在;如果否,创建日志文件目录。
5.如权利要求1或2所述的方法,其特征在于,在步骤B之前,所述的方法还包括判 断是否存在待处理的记录。
6.如权利要求1或2所述的方法,其特征在于,所述步骤B具体包括判断所述待处理记录中是否包含应用名、节点、用户名、密码及启停参数五个要素; 如果是,将所述待处理记录分割为5个域,并将所述5个域中的信息解析为5个要素; 对所述的5个要素信息进行解密。
7.如权利要求4所述的方法,其特征在于,如果读取的所述待处理记录中的启停参数 与所述的状态属性一致或者所述的状态属性为异常,将所述待处理记录中的要素及所述的 状态属性写入所述的日志文件中,并返回步骤B顺序读取配置文件中的下一条待处理记录。
8.如权利要求5所述的方法,其特征在于,在步骤E之后,将启停操作返回的信息写入 到日志文件中,并重复步骤B至步骤E。
9.一种服务器进程启停装置,其特征在于,所述的装置包括文件创建单元,用于创建服务器进程配置文件并保存所述的服务器进程配置文件; 记录读取单元,用于顺序读取配置文件中的待处理记录; 进程检验单元,用于检验读取的所述待处理记录是否存在对应的服务器进程; 判断单元,用于获取所述服务器进程的状态属性,并判断读取的所述待处理记录中的 启停参数与所述的状态属性是否一致;启停操作单元,用于根据所述的启停参数对所述的服务器进行启停操作。
10.如权利要求9所述的装置,其特征在于,所述的装置还包括 进程数查询单元,用于查询现有会话中已启动的启停程序进程数;比较单元,用于将所述的启停程序进程数与存储的并发参数进行比较。
11.如权利要求9或10所述的装置,其特征在于,所述的装置还包括存储目录判断单元,用于判断所述服务器进程配置文件的存储目录是否存在;存储目录创建单元,用于创建存储目录。
12.如权利要求9或10所述的装置,其特征在于,所述的装置还包括日志文件目录判断单元,用于判断日志文件目录是否存在;日志文件目录创建单元,用于创建日志文件目录。
13.如权利要求9或10所述的装置,其特征在于,所述的装置还包括记录判断单元, 用于判断是否存在待处理的记录。
14.如权利要求9或10所述的装置,其特征在于,所述的记录读取单元包括要素判断模块,用于判断所述待处理记录中是否包含应用名、节点、用户名、密码及启 停参数五个要素;要素处理模块,用于将所述待处理记录分割为5个域,并将所述5个域中的信息解析为 5个要素;要素解密模块,用于对所述的5个要素信息进行解密。
15.如权利要求12所述的装置,其特征在于,所述的装置还包括日志写入单元,当读取的所述待处理记录中的启停参数与所述的状态属性一致或者所 述的状态属性为异常时,用于将所述待处理记录中的要素及所述的状态属性写入所述的日 志文件中。
16.如权利要求12所述的装置,其特征在于,所述的日志写入单元还用于将启停操作 返回的信息写入到日志文件中。
17.一种服务器进程启停系统,其特征在于,所述的系统包括信息编辑服务器,信息 存储服务器,信息读取服务器,并发执行服务器,异常处理服务器及多个应用服务器;所述的信息编辑服务器与信息存储服务器相连接,所述的信息存储服务器与信息读取 服务器相连接,所述的信息读取服务器与并发执行服务器相连接,所述的并发执行服务器 与异常处理服务器相连接,所述的并发执行服务器通过内部网络与应用服务器相连接;其 中所述的信息编辑服务器用于编辑服务器进程配置文件;所述的信息存储服务器用于存储服务器进程配置文件及日志文件;所述的信息读取服务器用于读取配置文件中的待处理记录;所述的并发执行服务器用于根据并发参数启动指定数量的所述应用服务器的启停进程;所述的异常处理服务器用于记录所述应用服务器启停进程信息。
18.如权利要求17所述的系统,其特征在于,所述的信息编辑服务器包括信息创建装置,用于创建服务器进程配置文件;信息校验装置,与所述的信息校验装置相连接,用于检验所述服务器进程配置文件的 要素是否齐全;信息格式化装置,与所述的信息创建装置相连接,用于将所述的服务器进程配置文件 转化为系统识别的格式。
19.如权利要求17所述的系统,其特征在于,所述的信息存储服务器包括 目录管理装置,用于对服务器进程配置文件及日志文件进行存放管理;信息保存装置,与所述的目录管理装置相连接,用于对服务器进程配置文件及日志文 件进行存储;信息清理装置,与所述的信息保存装置相连接,用于定期对文件大小进行检测,并在日 志文件达到上限后对日志文件进行清理。
20.如权利要求17所述的系统,其特征在于,所述的信息读取服务器包括 格式验证装置,用于检验所述服务器进程配置文件的格式及要素;信息读取装置,用于从所述服务器进程配置文件中顺序读取配置文件中的待处理记录;信息解析装置,与所述的信息读取装置相连接,用于将所述待处理记录分割为5个域, 并将所述5个域中的信息解析为5个要素;信息传送装置,与所述的信息解析装置相连接,用于将所述的5个要素传递给所述的 并发执行服务器。
21.如权利要求20所述的系统,其特征在于,所述的并发执行服务器包括并发调度装置,用于根据并发参数启动指定数量的所述应用服务器的启停进程,并监 视所述启停进程的运行状态;应用状态检验装置,与所述的并发调度装置相连接,用于检验所述待处理记录对应的 应用服务器的进程状态,并判断执行启停操作还是跳过;密码解密装置,与所述的应用状态检验装置相连接,用于对所述的5个要素进行解密; 启停操作装置,与所述的密码解密装置相连接,用于获取所述待处理记录对应的应用 服务器的进程状态,并对所述应用服务器进行启停操作。
22.如权利要求21所述的系统,其特征在于,所述的异常处理服务器包括开始日志记录装置,用于将每个应用服务器启停程序调度的起始时间记录到总日志中;状态验证日志记录装置,用于记录所述应用状态检验装置信息,并将返回的所述信息 写入状态验证日志;解密日志记录装置,用于记录所述密码解密装置返回的解密成功或失败信息; 异常处理装置,用于将每个应用服务器启停操作返回的成功、失败或异常信息记录到 异常日志中;日志解析装置,与所述的相连接异常处理装置,用于解析所述的异常日志,并根据启停 操作执行的关键字匹配是否出现错误或异常;结果日志记录装置,用于将所述解析所述的异常日志的信息记录到总日志中。
23.如权利要求20所述的系统,其特征在于,如果所述的5个要素不齐全,所述的格式 验证装置还用于将要素不齐全信息记录到异常日志中。
全文摘要
本发明提供一种服务器进程启停方法、装置及系统,该系统包括信息编辑服务器,信息存储服务器,信息读取服务器,并发执行服务器,异常处理服务器及多个应用服务器;所述的信息编辑服务器用于编辑服务器进程配置文件;所述的信息存储服务器用于存储服务器进程配置文件及日志文件;所述的信息读取服务器用于读取配置文件中的待处理记录;所述的并发执行服务器用于根据并发参数启动指定数量的所述应用服务器的启停进程;所述的异常处理服务器用于记录所述应用服务器启停进程信息。本发明能够避免增减服务器时修改应用启停程序;本发明还实现了指定数目的并发控制,既可以避免给服务器较大的压力,又可以由于多进程运行而减少整个启停操作的耗时。
文档编号G06F11/34GK102135911SQ20111007106
公开日2011年7月27日 申请日期2011年3月23日 优先权日2011年3月23日
发明者吴斐, 曹辉健, 王祖峰, 贾琳飞 申请人:中国工商银行股份有限公司