基于分布构件的软件性能工程

时间:2022-08-16 08:09:48

基于分布构件的软件性能工程

【摘要】伴随分布构建技术的不断普及,其部署过程及动态重构变成软件的生命周期中重要的组成部分,影响着软件的性能。SPE作为传统的技术对于软件性能的追溯与跟踪,在部署过程与动态重构的阶段会遭到中断,所以在分布构件技术中不能适用。文章基于分布构建的软件性能存在的问题,提出分布构件的软件性能工程技术,让SPE技术能够在构件组装与部署及动态重构中能够有效应用。

【关键词】分布构建;软化性能工程

1.前言

随着近年来构件技术和分布技术的流行,SPE技术在全新的领域中又有的发挥在作用的,和以往的软件开发不一样,分布构件强调的是构件在组装过程、配置部署过程、运行过程与动态重构过程的支持,探索分布构件软件技术的量化属性,是研究构件技术中重要的一项挑战[1]。以往的SPE技术在分布构件中不适合直接应用的原因是:SPE没有对分布构件的组装提供直接的支持、SPE在分布构件在部署过程与动态重构的阶段中没有提供直接的支持、在部署的过程当中,分布构件能够被部署在任意一组服务器中。除此之外,在动态重构过程中,软件原有的性能属性也发生了改变,而SPE无法提供相应的办法。

2.分布构件的主要技术

2.1 分布构件的基本原理

通常情况下,分布构件的构件都是通过多种通讯的端口与能够配置的属性所构成,按照传递方向的不同,端口能够分成出端口与入端口,按照通讯模式的不同,有能把端口分成同步端口与异步端口,而能力成熟度模型(CMM)对这四种端口都进行定义,应用组件模型(EJB)只对入端口与同步端口及异步端口进行定义[2]。分布构建的外形图如图1所示:

图1 分布构件的外形图

2.2 分布构件的软件性能工程

对软件性能进行评估在软件性能的工程当中是一项基础工作,是一种以量化及系统化来完成性能目标的手段,SPE的基础原理就是把软件的模式和运行的环境也就是机器模型区分开来,通过软件模型对软件的信息与行为捕获,而机器模型是在硬件的运行环境中进行建模。SPT能够作为SPE基础规范,而在SPT的规范当中,对软件模型采用PA profile来建模,机器模型则使用GRM来建模。与此同时,软件模型当中的软件行为资源需求能够被表现出来。通常情况下,对软件的性能进行评估的方法能够分成三类,也就是分析方法与仿真方法以及经验公式法[3]。

除此之外,也能通过多种参数对性能进行衡量,比如利用率与响应的时间等,衡量方式不同,其结果也会有所不同,比如进行一次请求响应的时间最大与最小的吞吐量,后者会让系统在一些情况中可以快速的反应,但在一些大批量的请求处理时间就有可能大幅度增加,而前者恰恰相反。

3.分布构件的生命周期

在分布构件的生命周期不同阶段中,DCBSPE把软件和性能相结合,在组装构件的阶段中,DCBSPE联合构件组装的模型对软件的性能进行评估;在构件的部署阶段中,DCBSPE按照构件体系结构与性能需求制定出部署建议;而在构建动态重构阶段中,DCBSPE能够对重构意图进行剖析,并根据用户要求的性能参数给出重构意图方案。

3.1 组装

在分布构件中有两种互连的模式,也就是同步通讯与异步通讯。通讯模式的不同对响应的时间及利用率的影响也不同,DCBSPE在分布构件的组装与软件设计过程中核心工作就是对互连模式在构件软件性能中的影响进行评估。同步性能模型和异步性能模型的基础构件服务器性能模型。而为了使请求阻塞的发生率降低,多级线程的结构被普遍的应用,多级线程机构根据其特点分成三个等级:一级线程中有一个或者多个负责对网络连接的请求监听;第二级线程和网络连接对应关联,并在网络的报文中判断出报文请求;第三级线程把参数解码,同时执行业务[4]。其中,第一级除外,其余的有三种策略可以选择:

①不创建新线程,而是在上级线程上下文当中执行;

②运用线程池;

③对每一个请求都创建一个新线程来处理。

3.2 配置部署

在进行配置部署的过程当中,分布构件通常会部署在一组服务器中,一些分配方式也许会导致服务器变成性能瓶颈,同时其他的服务器被闲置,造成有限硬件功能的浪费,所以,DCBSPE要给出怎样分布构件与分配的建议。在服务器中也存在多种功能变成性能瓶颈的情况,比如宽带网络资源、处理器等[5]。

3.3 动态重构

在分布构件软件进行动态重构的过程中,开发人员与系统管理人员通常都会给予重构意图,但一般的重构意图只对系统功能中的重构进行考虑,而构件负载的变化与构件的迁移等情况的发生对形成造成的负面影响却被忽视掉,DCBSPE可以处理用户重构意图,让原来旧的重构意图转变成为全新重构意图,而新重构意图对功能并不会产生影响,却可以根据构件负载发生的变化对构件运行的位置进行优化。

4.结束语

综上所述,文章基于分布构件的软件性能工程,分析分布构件的基本原理,探索分布构件的生命周期,从构件的组装、构件的配置部署与构件的动态重构等方面叙述分布构件的性能作用,使得在实际的操作系统中达到保障系统可行度的重要作用。

参考文献

[1]杨菲.软件性能的优化设计在智能库馆系统中的应用[J].信息技术.2010,12(10):210-211.

[2]陈江.软件性能测试研究与分析[J].福建质量管理.2009,05(03):102-103.

[3]杨雪君.浅析软件系统性能测试流程规划[J].企业科技与发展.2011,23(06):156-157.

[4]石绥祥,夏登文,于戈.多层Client/Server结构软件性能评价[J].小型微型计算机系统.2011,45(03):221-222.

[5]冯杰,赵文耘,杨明华.基于构件的软件性能模型及评估技术研究[J].计算机工程与应用.2010,09(14):185-186.

作者简介:程珊(1979―),女,大学本科,九江职业大学讲师,研究方向:软件工程。

上一篇:进一步提高技能大赛选手集训工作有效性的研究 下一篇:高精度校准测试压力传感器装置及其测试平台设...