一种评估业务模块处理时间的方法及装置的制造方法
【技术领域】
[0001]本发明涉及信息技术领域,尤其涉及一种评估业务模块处理时间的方法及装置。
【背景技术】
[0002]在信息技术(Informat1n Technology,简称IT)系统中,对业务模块处理能力的评估是一个重要过程。业务模块的处理时延是评估业务模块处理能力的一个重要参数。在单核计算的IT系统中,目前对业务模块的处理能力评估过程中,通常是通过在IT系统中加入用于获取业务模块的处理时间的代码,并在测试过程中,调整输入到IT系统的业务的参数值,在测试结果中获取业务模块处理时间的信息。
[0003]目前针对多核计算的IT系统中,业务模块处理时延的评估采用针对单核计算的IT系统的评估方式,即确定性评估方法。确定性评估方法是在假设每个业务模块处理时间的变化忽略不计情况下进行评估。但是由于多核计算的IT系统中,业务模块的处理能力与资源共享、调度方式之间呈现非线性的关系,每个业务模块处理时间变化不能忽略。因此采用确定性评估方法,导致每个业务模块处理时间的评估不准确,从而使得根据评估结果设置的系统的资源利用率较低。
【发明内容】
[0004]本发明提供一种评估业务模块处理时间的方法及装置,用以解决现有技术中存在评估业务模块处理时间不准确到时系统资源利用率低的问题。
[0005]第一方面,本发明实施例提供了一种评估业务模块处理时间的方法,该方法包括:
[0006]根据信息系统中用于处理业务的各个模块的功能,确定各个模块所属的层级;其中,最上层的各个模块为业务模块,任一业务被处理时依次经过各个所述业务模块;
[0007]构建所属不同层级的各个模块的排队模型;
[0008]获取构建的所属不同层级的各个模块的排队模型的输入参量;
[0009]根据输入参量和预建立的各个模块针对任一业务的交互方式,建立用于评估业务模块处理时间的仿真模型;
[0010]将从所述信息系统中预先获取的业务样本输入所述仿真模型,评估业务模块的处理时间。
[0011 ] 结合第一方面,在第一方面的第一种可能的实现方式中,所述预建立的各个模块针对任一业务的交互方式,包括:
[0012]第一业务模块接收到第一业务请求消息时,将所述第一业务请求消息发送至各个处理模块;所述各个处理模块是归属于所述第一业务模块的其他层级的用于处于所述第一业务对应的业务类型的各个模块,所述第一业务请求消息为从所述信息系统中预先获取的至少一个业务样本,所述业务样本包括业务类型和业务信息;
[0013]第一业务模块接收位于其下一层的各个处理模块发送的业务请求响应消息,所述业务请求响应消息是位于第一业务模块的下一层的每个处理模块,在接收到所述第一业务请求消息时,采用针对该处理模块预先确定的调度方式对所述业务信息进行处理完成后发送的,所述业务请求响应消息中携带经过处理后的业务信息;
[0014]所述第一业务模块在接收到位于其下一层的所有处理模块发送的业务请求响应消息后,向第二业务模块发送第二业务请求消息,所述第二业务请求消息中携带业务类型及经过处理后的业务信息。
[0015]结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述调度方式包括以下任一一项:
[0016]先来先服务,后来先服务,优先级服务,轮转服务。
[0017]结合第一方面的第一种或者第二种可能的实现方式,在第一方面的第三种可能的实现方式中,评估业务模块的处理时间,包括:
[0018]针对每个业务模块,分别执行:
[0019]获取该业务模块接收到业务请求消息的开始时间,并获取该业务模块接收到业务请求响应消息的结束时间;
[0020]根据获取的所述开始时间及所述结束时间,评估该业务模块处理业务的时间。
[0021]结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,在评估每个业务模块处理业务的时间后,还包括:
[0022]根据每个业务模块处理业务的时间,确定所述业务处理的总时间。
[0023]第二方面,本发明实施例提供了一种评估业务模块处理时间的装置,该装置包括:
[0024]确定单元,用于根据信息系统中用于处理业务的各个模块的功能,确定各个模块所属的层级;其中,最上层的各个模块为业务模块,任一业务被处理时依次经过各个所述业务丰吴块;
[0025]构建单元,用于构建所述确定单元确定的所属不同层级的各个模块的排队模型;
[0026]获取单元,用于获取所述构建单元构建的所属不同层级的各个模块的排队模型的输入参量;
[0027]建立单元,用于预建立各个模块对任一业务的交互方式,并根据所述获取单元获取的输入参量和预建立的各个模块针对任一业务的交互方式,建立用于评估业务模块处理时间的仿真模型;
[0028]评估单元,用于将从所述信息系统中预先获取的业务样本输入所述建立单元建立的仿真模型,评估业务模块的处理时间。
[0029]结合第二方面,在第二方面的第一种可能的实现方式中,所述建立模块用于预建立的各个模块针对任一业务的交互方式,包括:
[0030]第一业务模块接收到第一业务请求消息时,将所述第一业务请求消息发送至各个处理模块;所述各个处理模块是归属于所述第一业务模块的其他层级的用于处于所述第一业务对应的业务类型的各个模块,所述第一业务请求消息为从所述信息系统中预先获取的至少一个业务样本,所述业务样本包括业务类型和业务信息;
[0031]第一业务模块接收位于其下一层的各个处理模块发送的业务请求响应消息,所述业务请求响应消息是位于第一业务模块的下一层的每个处理模块,在接收到所述第一业务请求消息时,采用针对该处理模块预先确定的调度方式对所述业务信息进行处理完成后发送的,所述业务请求响应消息中携带经过处理后的业务信息;
[0032]所述第一业务模块在接收到位于其下一层的所有处理模块发送的业务请求响应消息后,向第二业务模块发送第二业务请求消息,所述第二业务请求消息中携带业务类型及经过处理后的业务信息。
[0033]结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述建立单元,具体用于预建立的所述各个处理模块所采用的调度方式包括以下任一一项:
[0034]先来先服务,后来先服务,优先级服务,轮转服务。
[0035]结合第二方面的第一种或者第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述评估模块,具体用于:
[0036]针对每个业务模块,分别执行:
[0037]获取该业务模块接收到业务请求消息的开始时间,并获取该业务模块接收到业务请求响应消息的结束时间;
[0038]根据获取的所述开始时间及所述结束时间,评估该业务模块处理业务的时间。
[0039]结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述评估模块,还用于在评估每个业务模块处理业务的时间后,根据每个业务模块处理业务的时间,确定所述业务处理的总时间。
[0040]利用本发明实施例提供的评估业务模块处理时间的方法及装置,通过将信息系统划分为不同的模块,并根据各个模块的功能确定各个模块所属的层级。针对各个业务被处理时均依次经过最上层的各个模块。构建所属不同层级的各个模块的排队模型;获取构建的所属不同层级的各个模块的排队模型的输入参量;根据输入参量、预建立的各个模块针对任一业务的交互方式建立评估业务模块处理时间的仿真模型。基于构建的仿真模型,确定每个业务模块的处理时间。考虑了每个业务模块处理时间变化,因此,每个业务模块处理时间的评估相对准确,从而根据评估结果设置的系统的资源相对准确,减少了资源浪费,提供了资源利用率。
【附图说明】
[0041]图1为本发明实施例提供的评估业务模块处理时间的方法流程图;
[0042]图2为本发明实施例提供的评估业务模块处理时间的装置示意图;
[0043]图3为本发明实施例提供的评估业务模块处理时间的装置示意图;
[0044]图4为本发明实施例提供的网络存储阵列系统中各个模块分层示意图。
【具体实施方式】