分布式环境下面向服务质量评价的OSGi容错策略的利记博彩app

文档序号:9750655阅读:373来源:国知局
分布式环境下面向服务质量评价的OSGi容错策略的利记博彩app
【技术领域】
[0001] 本发明属于计算机容错技术领域,特别涉及一种分布式环境下面向服务质量评价 的OSGi容错策略。
【背景技术】
[0002] 计算机科学是21世纪发展最快、对人类生活影响最大的学科之一。软件工程作为 其中重要的一个组成部分,也越来越受到重视。随着近年来计算机软件技术的迅猛发展,基 于组件的开发模式逐渐成为软件工程领域的发展趋势。
[0003] 0SGi(open service gateway initiative)是一种基于服务的组件技术框架,因 其具有易用、轻量级、动态更新、构件生命周期管理等特性,受到了广大开发者的重视。OSGi 为Java应用提供了一个动态化、面向服务的构建模型,弥补了 Java语言标准缺乏模块化支 持的不足,使Java成为软件集成和软件开发的首选环境。
[0004] 随着物联网逐渐成为计算机领域的重要发展方向,OSGi也进行了分布式扩展改造 以适应发展潮流,然而这对OSGi的可靠性提出了挑战。由于OSGi最初面向嵌入式环境设计, 因此并不能提供分布式环境下的容错机制。由于分布式系统一般应用于工业控制、企业服 务器等大型重要项目中,其微小的错误都会造成难以估量的损失。因此提高OSGi的容错能 力,提高OSGi系统容错效率是十分重要的任务。

【发明内容】

[0005] 针对现有技术中OSGi不能提供分布式环境下容错机制的问题,本发明提供了一种 分布式环境下面向服务质量评价的OSGi容错策略,该策略采用主动甄别服务和被动出错修 复相结合的容错方式,可有效完成分布式OSGi环境的容错工作,可在保证容错效果的前提 下减少系统开销。
[0006] 为解决上述技术问题,本发明采用如下的技术方案:
[0007] -种分布式环境下面向服务质量评价的OSGi容错策略,包括:
[0008] 步骤1,主动甄别服务,本步骤依次包括:
[0009] 1.1根据需求选择备选服务集和若干服务质量指标;
[0010] 1.2根据服务、服务运行平台和/或服务运行网络的历史运行数据得备选服务集中 各备选服务的服务质量指标数据;
[0011] 1.3标准化服务质量指标数据获得服务质量指标标准化数据;
[0012] 1.4对各备选服务的服务质量指标标准化数据分别加权求和,得各备选服务的服 务评价成绩;服务质量指标标准化数据的权值根据应用场景和需求人为设定;
[0013] 1.5根据服务评价成绩从大到小对备选服务排序,并计算各备选服务的被调用概 _
^中,InvPri为排序第i个的备选服务的概率;Qsi和Q sj分别为排序 第i个和第j个的备选服务的服务评价成绩;Wi和Wj分别为Qsi和Qsj的修正权值,Wi = n-i,Wi = n-j; η为备选服务数;
[0014] 1.6根据被调用概率从备选服务集中获得调用目标服务进行调用,并从备选服务 集中剔除作为调用目标服务的备选服务;
[0015] 步骤2,检测调用目标服务的运行状况,若运行成功,直接结束或重启被停止运行 的备选服务后结束;否则,执行步骤3;
[0016] 步骤3,被动出错修复,本步骤进一步包括:
[0017] 3.1停止运行调用目标服务;
[0018] 3.2若当前备选服务集为空集,结束并返回错误信息;否则,对当前备选服务集执 行子步骤1.2~1.6。
[0019] 服务质量指标是服务质量信息的具体表现形式。本发明中服务质量指标是能够体 现服务在调用过程中所能提供的表现情况的信息,可以为下述指标中的多种:(1)服务的历 史运行状况相关的指标、(2)服务运行平台的运行表现相关的指标、(3)服务运行平台的配 置水平相关的指标、(4)服务运行网络的稳定性和传输效率相关的指标。服务质量指标根据 需求人为选择。
[0020] 上述,服务的历史运行状况相关的指标可以为服务的平均成功率、平均运行时长 等;服务运行平台的运行表现相关的指标可以为稳定运行时长、历史崩溃率等;服务运行网 络的稳定性与传输效率相关的指标可以为网络平均传输速率等。
[0021] 子步骤1 . 3中,对数值型服务评价指标,采用公?

:寸效益型和成本型的服务评价指标数据进行标准化,其中,Xk表示当 前备选服务的第k个服务评价指标数据,xl表示处的标准化数据,maxk和mink分别为所有备 选服务的第k个服务评价指标数据中的最大值和最小值。
[0022] 上述效益型的服务评价指标是指,当效益型的服务评价指标的值越大时,表示服 务表现越好,例如,服务的平均成功率;成本型的服务评价指标则正好相反,当成本型的服 务评价指标的值越小时,表示服务表现越好,例如,服务的平均运行时长。
[0023] 子步骤1.3中,对非数值型服务评价指标,先人工赋值,再进行标准化。
[0024] 例如,若非数值型服务评价指标为布尔型,其值包括"真"和"假"两种,可人为将数 值1赋值给"真",将数值〇赋值给"假"。对计算机配置,由于配置有多种情况,则针对各情况 分别赋值。
[0025]步骤2中,采用基于java的代理机制检测调用目标服务的运行状况。
[0026] 本发明中,服务质量信息意义重大,服务质量指标即服务质量信息的具体形式。图 1为服务质量信息的组成示意图。服务质量信息的真实性直接决定了本发明容错策略的执 行效率。每次服务调用及服务出错后所产生的运行数据均第一时间记录,以保证服务评价 成绩的真实性与有效性。
[0027] 当服务为新注册服务时,由于其从未运行过,因此服务质量信息不可知。这时需要 查询环境中是否有同名服务存在,若存在同名服务,则将同名服务的服务评价成绩平均值 赋值给该新注册服务,作为新注册服务的服务评价成绩。若不存在同名服务,则根据经验对 新注册服务赋予临时服务评价成绩。由于新注册服务从未运行过,因此其没有对应的服务 质量信息,所以赋予其临时服务评价成绩;当该新注册服务被系统调用后,则根据其具体表 现更新服务质量信息。
[0028] 与现有技术相比,本发明具有如下特点和有益效果:
[0029] 1、本发明采用主动甄别服务和被动出错修复相结合的方式达到容错目的,在服务 调用前,通过主动甄别服务方式选择合适的调用目标服务,以提高本次服务调用的成功率 和运行效率。在服务调用过程中,通过服务检测收集服务的运行参数并捕捉服务调用的出 错信息;当捕捉到出错信息时,利用出错修复方法对调用过程进行修复,以提高系统稳定 性,从而被动保证服务成功。
[0030] 2、本发明中,服务质量信息十分重要,该信息越真实有效,越能帮助系统提高容错 效率,优化调用;调用的优化可保证系统运行的高效性和恢复的有效性,从而减少不必要的 容错开销。
【附图说明】
[0031 ]图1为服务质量信息的组成示意图;
[0032]图2为本发明流程示意图;
[0033] 图3为本发明实施例的系统结构图;
[0034] 图4为实施例中主动服务甄选流程图;
[0035] 图5为实施例中被动出错修复示意图。
【具体实施方式】
[0036] 下面将详细描述本发明的具体实施例。应当注意,这里描述的实施例只用于举例 说明,并不用于限制本发明。
[0037] 本发明通过主动甄选服务提高服务调用的先验成功率,通过被动出错修复提高服 务调用的运行实际运行成功率。图2为本发明容错策略流程示意图,其中被动出错修复是容 错策略得以成功运行的有力保证,主动甄选服务是容错策略效率与可靠性有力提升的保 证。仅有甄选服务方案的容错策略不能保证服务运行的可靠性,而仅具有出错修复方案的 容错策略不能保证系统运行的执行效率。两者结合是有效完成容错工作的必要保证。
[0038] 本实施例中,将面向服务质量评价的OSGi容错策略应用于存储管理平台。该平台 中,运行着若干不同版本文件的上传服务与下载服务,各版本服务具有不同的运行表现,其 运行成功率、运行速度等指标不相同。容错策略用于维护系统正常运行,保证用户上传下载 正确完成。
[0039]图3为本发明实施例的系统结构图,以OSGi R5作为框架环境,以R-〇SGi作为分布 式扩展方案。系统基础层代表基础硬件与软件环境。系统中间部分包括服务池和实现容错 策略的容错中间层,服务池用来维护系统中所有服务,容错中间层具有实现了上述所有功 能的代理模块、调度模块、信息中心以及实现分布式环境维护的管理
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1