CN101739463A - 互联网服务查找优化方法 - Google Patents
互联网服务查找优化方法 Download PDFInfo
- Publication number
- CN101739463A CN101739463A CN200910311680A CN200910311680A CN101739463A CN 101739463 A CN101739463 A CN 101739463A CN 200910311680 A CN200910311680 A CN 200910311680A CN 200910311680 A CN200910311680 A CN 200910311680A CN 101739463 A CN101739463 A CN 101739463A
- Authority
- CN
- China
- Prior art keywords
- service
- buffer memory
- consumer
- quality
- search
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种互联网技术领域的互联网服务查找优化方法,包括:在服务消费者和服务注册中心之间建立多级树状缓存,每个服务消费者归属于多级树状缓存的一个对应的叶子节点缓存;对服务消费者发送的服务查找请求进行处理;定期对多级树状缓存进行更新。本发明有助于提高服务查找的准确度,并推动服务计算技术的发展和推广。这都是由于建立了多级树状缓存,并根据服务消费者的相似距离来群集服务消费者而带来的优势。
Description
技术领域
本发明涉及的是一种互联网技术领域的方法,具体是一种基于多级缓存结构和实时动态服务质量约束的互联网服务查找优化方法。
背景技术
当今,服务计算已经成为分布式计算与信息系统领域内迅速发展的方向,随着Web服务(Web Service)的发展与成熟,服务计算以面向服务架构(Service-orientedArchitecture,SOA)的形式得到了广泛的推广和应用。
对于基于服务计算的应用来说,其质量完全取决于构成它们的服务。由于在互联网环境下,服务的数量呈几何级数增长,在数量浩瀚且质量良莠不齐的服务中,如何保证基于服务计算的应用总是由高质量的服务构成就成为了必须要解决的问题。服务质量(Quality ofService,QoS)的概念在这种情况下应运而生,成为目前SOA架构中对服务提供者(ServiceProvider)进行区分的重要标准。
很多学者都致力于在SOA的服务查找过程中支持QoS。当前,对于QoS的确定主要有两种方式,一个是服务提供者自己对服务的质量描述,另一个是已经执行过该服务的服务消费者反馈的QoS信息来进行统计。
对于第一种方式,由于服务提供者主观因素的存在,所以在不能保证服务描述客观的情况下,这种途径不能作为QoS的主要依据;而且对于动态服务质量属性,这种静态描述也难以反映其实时状态。
经过对现有技术的检索发现,中国专利文献号CN1968322,记载了一种“Web服务查找和集成代理系统”,该技术提出了一种能够针对服务质量方面的度量值进行服务查找的方法,但是这种方法的前提是Web服务必须具有自我描述服务质量的能力。中国专利文献号CN101383850,记载了一种“基于服务质量本体的互联网服务选择系统及方法”,该技术提出了利用QoS本体中包含的QoS语义来处理支持Web服务的选择,这种方法需要本体技术的支持。
又进一步检索发现,Makripoulias Y.,Makris C.,Panagis Y.,Sakkopoulos
E.,Adamopoulou P.,Tsakalidis A.的“基于服务质量的互联网服务查找(WebService discovery based on Quality of Service)”一文(发表于2006年电气电子工程师协会计算机系统与应用国际会议论文集第196-199页);Anup Kumar,El-Geniedy A.,Sanjuli Agarwal.的“在面向服务架构中提供基于服务质量的注册中心的通用框架(Ageneralized framework for providing QoS based registry in service orientedarchitecture)”一文(发表于2005年电气电子工程师协会服务计算国际会议论文集第295-301页);Xu Ziqiang,Martin Patrick,Powley Wendy,Zulkernine Farhana的“信誉增强的基于服务质量的互联网服务查找(Reputation-Enhanced QoS-based Web ServicesDiscovery)一文(发表于2007年电气电子工程师协会互联网服务国际会议论文集第249-256页)中都提到了要利用反馈来实现对服务质量的度量。但是由于不同的服务消费者分布在不同的网络环境中,它们所反馈的动态服务质量信息对于不同的服务消费者具有的参考价值也不尽相同,因此,如何考虑具体的服务消费者环境对动态服务质量的不同感受,成为了提高基于动态服务质量约束的服务查找的精确度必须要解决的问题。
发明内容
本发明针对现有技术存在的上述不足,提供一种互联网服务查找优化方法,在任何支持接收、存储和查询有关实时动态服务质量的反馈信息的服务注册中心中使用,通过建立基于服务消费者相似度的多级服务查找缓存,可以更高效地查找服务。
本发明是通过以下技术方案实现的,本发明包括以下步骤:
第一步、在服务消费者和服务注册中心之间建立多级树状缓存,每个服务消费者归属于多级树状缓存的一个对应的叶子节点缓存。
所述的多级树状缓存是指:多个缓存按照树型结构组织在一起,除了作为根节点的服务注册中心之外,每个缓存在这个树型结构中都只有唯一的一个父缓存作为其上级缓存,并且可以有0个或多个子缓存作为其下级缓存,其中:叶子节点缓存没有任何下级缓存。
所述的叶子节点缓存中所对应的服务消费者之间设有相似距离参数,该相似距离参数的值小于相似距离阈值的服务消费者都被群集在该缓存中。
所述的相似距离参数具体如下:
其中:n表示在叶子节点中所有的服务消费者的数量;Sj表示在叶子节点中缓存的某个服务,假设叶子节点中缓存了1个服务,则j取值范围为从1到l的整数;表示第k个服务消费者对服务Sj的第i个动态服务质量属性的感受值,假设包含m个动态服务质量属性,则i取值范围为从1到m,k的取值范围从1到n;表示在某个缓存中的所有n个服务消费者对于该缓存中缓存的某个服务Sj的某个动态服务质量属性Qj的感受值的平均值,
其中:由上式(1)计算得到;含义与上式(1)中的含义相同;Sj含义与上式(1)中的Sj含义相同;m表示所有动态服务质量属性的数量;表示第k个服务消费者对服务Sj的所有m个动态服务质量属性的感受值构成的向量与由所有n个服务消费者对于服务Sj的所有m个动态服务质量属性Qi的感受值的平均值构成的向量之间的欧氏距离。
所述的相似距离参数是指:
其中:a和b表示两个服务消费者;和的含义同上式(2)中的Wab表示两个服务消费者a和b的相似距离,它是通过针对缓存中的l个服务的每个服务,先计算a和b对该服务的服务质量感受值的差值相对于a和b对该服务的服务质量感受值的平均值的比值,然后计算这些比值的算术平均值而得到的,Wab越小,则表明两个服务消费者越相似,当其为0时,表明两个服务消费者对服务质量的感知完全相同。可以设定Wab的阀值,将相似距离小于该阀值的服务消费者群集在一起,由同一个叶子节点的缓存来负责管理。
所述的建立多级树状缓存是指:先选取l个服务作为样本,让所有n个服务消费者对这l个服务进行调用,并记录它们对这些服务的每个动态质量属性的感受值其中j取值范围从1到l,i取值范围从1到m,k取值范围从1到n;根据获得的计算再计算所有n个服务消费者两两之间的相似距离Wab;将相似距离小于指定阀值的服务消费者群集在一起,形成多级树状缓存。
第二步、在建立多级树状缓存之后,对服务消费者发送的服务查找请求进行处理,其中:服务查找请求是指按照指定的约束条件查找服务的请求,指定的约束条件包含服务功能约束条件和服务质量约束条件,具体的处理过程如下:
2.1)服务消费者将服务查找请求发送到其对应的叶子节点缓存中,并按照请求中包含的服务功能约束条件进行查找。当在该叶子节点缓存中找到了满足服务功能约束条件的待选服务后,则跳转至步骤2.2),否则跳转至步骤2.3);
2.2)使用服务消费者之间的相似距离预测该服务消费者对待选服务所感知的服务质量,计算方法如公式4:
其中:含义与公式1中的含义类似,表示服务消费者a对服务Sx的第i个动态服务质量属性的感受值;经计算得到,表示在该缓存中的所有服务消费者对于服务Sx的动态服务质量属性Qi的感受值的平均值;Wab由公式3计算得到;表示服务消费者b对服务Sx的动态服务质量属性Qi的感受值的预测值,它等于服务消费者a对服务Sx的服务质量属性Qi的感受值加上一个偏移量,该偏移量等于与该缓存中所有服务消费者对该属性的平均感受值的差与a与b的相似距离Wab的乘积;
如果能够满足服务查找请求中的服务质量约束,则返回待选服务作为查找结果,并跳转至步骤2.4),否则跳转至步骤2.3);
2.3)服务查找请求向上发送给父缓存,父缓存根据服务查找请求中的服务功能约束条件查找它的其他所有子缓存,当找到满足服务功能约束条件的服务时,父缓存将服务查找请求转发给包含满足条件的待选服务所在的子缓存,然后跳转步骤2,计算待选服务所在的缓存中对应的服务消费者与接收服务查找请求的初始缓存对应的服务消费者之间的相似距离,并计算发出服务查找请求的服务消费者对待选服务所感受到的服务质量,从而最终确定待选服务是否满足查找请求中的服务质量约束条件,如果在父缓存中仍然没有查找到满足的服务,则重复步骤3,继续向上一级缓存转发服务查找请求,当服务查找请求到达服务注册中心时仍无法找到满足要求的服务,则服务查找过程以失败结束;
2.4)对于成功处理的服务查找请求,查找到的服务将被缓存到产生该服务查找请求的服务消费者对应的叶子节点缓存中,而服务消费者在调用该服务之后,将获得的动态服务质量感受值也添加在叶子节点缓存中,至此,服务查找过程以成功结束。
第三步、定期对多级树状缓存进行更新。更新的依据就是使用在缓存中保存的服务消费者调用服务时的动态服务质量感受值,使用动态服务质量感受值更新相似距离参数,并用更新相似距离参数和阀值比较,得到新的服务消费者和叶子缓存节点的对应关系。
本发明有助于提高服务查找的准确度,并推动服务计算技术的发展和推广。这都是由于建立了多级树状缓存,并根据服务消费者的相似距离来群集服务消费者而带来的优势。
附图说明
图1为本发明流程示意图。
具体实施方式
下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
本实施例包括以下步骤:
在服务注册中心和服务消费者之间设置多个服务器,作为多级缓存结构中的节点。按照服务消费者所处的网络环境,例如IP地址段对服务消费者进行初始划分,将服务消费者划分成若干个群组。在多级缓存结构中的每个叶子节点用于管理一个服务消费者群,并将这些服务消费者之间的相似距离初始化为0,即它们完全相似。每个叶子节点缓存的服务集初始化为空。
使用适当数量的服务作为样本进行训练,以调整服务消费者在叶子节点缓存中的位置。在训练期间按,当某个服务消费者发起服务查找请求时,该请求被发送到它所对应的叶子节点缓存。
在刚刚初始化之后,在该缓存中缓存的服务集为空,所以不存在符合要求的服务,因此逐级上发该请求,直至找到符合要求的服务,表示服务查找成功,或者直至找到服务注册中心为止也未能发现符合要求的服务,表示服务查找失败。
当服务查找成功之后,就会在该缓存节点缓存的服务集中添加该服务。同时,今后该缓存对应的服务消费者对这个服务的调用所产生实时动态服务质量反馈信息将存储在该缓存中。
当反馈信息的样本空间足够大时,该缓存对实时动态服务质量反馈信息进行处理,调整其对应的服务消费者之间的相似距离。此时,服务消费者之间的相似距离将不再全部为0。
此后,当服务消费者发出的服务查找请求发送到其对应的缓存节点时,其处理方式为:
如果在该缓存节点缓存的服务集中能够找到符合其服务功能约束条件的服务,则利用服务质量反馈信息和服务消费者之间的相似距离,预测该服务消费者对待选服务所感受的服务质量,以确定待选服务是否符合其动态服务质量约束条件。
如果满足上述两方面的约束条件,则将待选服务作为查找结果返回;如果不满足约束条件,则逐级上发该请求,直至找到符合要求的服务,表示服务查找成功,或者直至找到服务注册中心为止也未能发现符合要求的服务,表示服务查找失败。
每个叶子缓存节点将周期性地调整服务消费者之间的相似度,而节点之间通过协作,还可以改变服务消费者的群组划分,调整每个节点所对应的服务消费者群组。
通过实验进行了对比,一种环境是搭建了一个标准的服务注册中心,并采用描述的技术构建了包含3级缓存的该服务注册中心的多级树状缓存,其中第一级缓存有2个节点,它们每个节点都包含2个节点的二级缓存,而二级缓存的每个节点也都包含2个节点的三级缓存;另一种环境是只搭建了一个标准的服务注册中心。在两个环境中都注册了1000个服务,并模拟100个服务消费者发送服务查找请求,其中服务质量约束条件包括有关服务性能和服务可靠性两个服务动态质量属性的约束条件。
在第一种环境中,先选择了600个服务注册到服务注册中心中作为样本,按照第一步的描述进行训练,将这100个服务消费者群集在8个三级缓存,即叶子节点缓存中。然后将剩余的400个服务注册到服务注册中心。
在第二种环境中,直接将1000个服务注册到服务注册中心中。
本实施例在上述准备工作完毕后,在两个环境中模拟100个服务消费者产生相同的1000个服务查找请求,然后记录服务查找请求的平均处理时间和服务注册中心的平均压力。实验数据表明对于服务查找请求的平均处理时间,第一种环境比第二种环境降低40%左右,而对于服务注册中心的平均压力,第一种环境比第二种环境降低50%左右。更重要的是,在通过第二种环境进行服务查找请求处理时,无法区分功能相同的服务,因此发现的满足条件的服务数量比较多,而在第一种环境中可以根据用户提出的有关服务质量的约束条件,减少备选服务数量,从而提高服务查找的精度。
Claims (7)
1.一种互联网服务查找优化方法,其特征在于,包括以下步骤:
第一步、在服务消费者和服务注册中心之间建立多级树状缓存,每个服务消费者归属于多级树状缓存的一个对应的叶子节点缓存;
第二步、在建立多级树状缓存之后,对服务消费者发送的服务查找请求进行处理,其中:服务查找请求是指按照指定的约束条件查找服务的请求,指定的约束条件包含服务功能约束条件和服务质量约束条件;
第三步、定期对多级树状缓存进行更新:更新的依据就是使用在缓存中保存的服务消费者调用服务时的动态服务质量感受值,使用动态服务质量感受值更新相似距离参数,并用更新后的相似距离参数和阀值比较,得到新的服务消费者和叶子缓存节点的对应关系。
2.根据权利要求1所述的互联网服务查找优化方法,其特征是,所述的多级树状缓存是指:多个缓存按照树型结构组织在一起,除了作为根节点的服务注册中心之外,每个缓存在这个树型结构中都只有唯一的一个父缓存作为其上级缓存,并且可以有0个或多个子缓存作为其下级缓存,其中:叶子节点缓存没有任何下级缓存。
3.根据权利要求1或2所述的互联网服务查找优化方法,其特征是,所述的叶子节点缓存中所对应的服务消费者之间设有相似距离参数,该相似距离参数的值小于相似距离阈值的服务消费者都被群集在该缓存中。
4.根据权利要求3所述的互联网服务查找优化方法,其特征是,所述的相似距离参数具体如下:
其中:n表示在叶子节点中所有的服务消费者的数量;Sj表示在叶子节点中缓存的某个服务,假设叶子节点中缓存了l个服务,则j取值范围为从1到l的整数;表示第k个服务消费者对服务Sj的第i个动态服务质量属性的感受值,假设包含m个动态服务质量属性,则i取值范围为从1到m,k的取值范围从1到n;表示在某个缓存中的所有n个服务消费者对于该缓存中缓存的某个服务Sj的某个动态服务质量属性Qi的感受值的平均值,
7.根据权利要求1所述的互联网服务查找优化方法,其特征是,所述的第二步具体包括以下步骤:
2.1)服务消费者将服务查找请求发送到其对应的叶子节点缓存中,并按照请求中包含的服务功能约束条件进行查找,当在该叶子节点缓存中找到了满足服务功能约束条件的待选服务后,则跳转至步骤2.2),否则跳转至步骤2.3);
2.2)使用服务消费者之间的相似距离预测该服务消费者对待选服务所感知的服务质量,计算方法如下:
其中:含义与公式1中的含义类似,表示服务消费者a对服务Sx的第i个动态服务质量属性的感受值;经计算得到,表示在该缓存中的所有服务消费者对于服务Sx的动态服务质量属性Qi的感受值的平均值;Wab由公式3计算得到;表示服务消费者b对服务Sx的动态服务质量属性Qi的感受值的预测值,它等于服务消费者a对服务Sx的服务质量属性Qi的感受值加上一个偏移量,该偏移量等于与该缓存中所有服务消费者对该属性的平均感受值的差与a与b的相似距离Wab的乘积;
2.3)服务查找请求向上发送给父缓存,父缓存根据服务查找请求中的服务功能约束条件查找它的其他所有子缓存,当找到满足服务功能约束条件的服务时,父缓存将服务查找请求转发给包含满足条件的待选服务所在的子缓存,然后跳转步骤2,计算待选服务所在的缓存中对应的服务消费者与接收服务查找请求的初始缓存对应的服务消费者之间的相似距离,并计算发出服务查找请求的服务消费者对待选服务所感受到的服务质量,从而最终确定待选服务是否满足查找请求中的服务质量约束条件,如果在父缓存中仍然没有查找到满足的服务,则重复步骤3,继续向上一级缓存转发服务查找请求,当服务查找请求到达服务注册中心时仍无法找到满足要求的服务时,则服务查找过程以失败结束;
2.4)对于成功处理的服务查找请求,查找到的服务将被缓存到产生该服务查找请求的服务消费者对应的叶子节点缓存中,而服务消费者在调用该服务之后,将获得的动态服务质量感受值也添加在叶子节点缓存中,至此,服务查找过程以成功结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009103116808A CN101739463B (zh) | 2009-12-17 | 2009-12-17 | 互联网服务查找优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009103116808A CN101739463B (zh) | 2009-12-17 | 2009-12-17 | 互联网服务查找优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101739463A true CN101739463A (zh) | 2010-06-16 |
CN101739463B CN101739463B (zh) | 2011-09-28 |
Family
ID=42462946
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009103116808A Expired - Fee Related CN101739463B (zh) | 2009-12-17 | 2009-12-17 | 互联网服务查找优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101739463B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102123175A (zh) * | 2011-03-07 | 2011-07-13 | 浙江大学 | 一种基于最优相似距离的Qos感知的服务选择方法 |
CN104506578A (zh) * | 2014-12-03 | 2015-04-08 | 郑州正信科技发展股份有限公司 | 发布/订阅网络的订阅信息的维护方法及装置 |
CN108446356A (zh) * | 2018-03-12 | 2018-08-24 | 上海哔哩哔哩科技有限公司 | 数据缓存方法、服务器及数据缓存系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100454300C (zh) * | 2005-08-17 | 2009-01-21 | 上海理工大学 | 基于网格机制的网络数据搜索系统及其方法 |
-
2009
- 2009-12-17 CN CN2009103116808A patent/CN101739463B/zh not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102123175A (zh) * | 2011-03-07 | 2011-07-13 | 浙江大学 | 一种基于最优相似距离的Qos感知的服务选择方法 |
CN102123175B (zh) * | 2011-03-07 | 2014-06-25 | 浙江大学 | 一种基于最优相似距离的Qos感知的服务选择方法 |
CN104506578A (zh) * | 2014-12-03 | 2015-04-08 | 郑州正信科技发展股份有限公司 | 发布/订阅网络的订阅信息的维护方法及装置 |
CN108446356A (zh) * | 2018-03-12 | 2018-08-24 | 上海哔哩哔哩科技有限公司 | 数据缓存方法、服务器及数据缓存系统 |
CN108446356B (zh) * | 2018-03-12 | 2023-08-29 | 上海哔哩哔哩科技有限公司 | 数据缓存方法、服务器及数据缓存系统 |
Also Published As
Publication number | Publication date |
---|---|
CN101739463B (zh) | 2011-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102202072B (zh) | 互联网站数据的单向同步方法 | |
CN1658598A (zh) | 计算机网络中自组织分配服务方法、系统和软件产品 | |
CN102244685A (zh) | 一种支持负载均衡的分布式缓存动态伸缩方法及系统 | |
CN103297499A (zh) | 一种基于云平台的调度方法及系统 | |
CN102170396A (zh) | 一种基于区分服务的云存储系统QoS控制方法 | |
CN102014042A (zh) | 一种Web负载均衡方法、网格服务器及系统 | |
CN103986766A (zh) | 自适应负载均衡作业任务调度方法及装置 | |
CN102299959A (zh) | 一种数据库集群系统的负载均衡实现方法和装置 | |
CN103404090A (zh) | 应用于在网络中转发数据时用于载荷散布的表查找方法的可变大小表构造的改进系统和方法 | |
CN103714050A (zh) | 具有多粒度特性的多层云制造资源建模框架 | |
CN102843420A (zh) | 基于模糊划分的社交网络数据分发系统 | |
CN101739463B (zh) | 互联网服务查找优化方法 | |
CN101719148A (zh) | 三维空间信息的存储方法、装置、系统及调度系统 | |
CN110727738A (zh) | 基于数据分片的全局路由系统、电子设备及存储介质 | |
CN104283963A (zh) | 一种分布合作式的cdn负载均衡方法 | |
CN101540785A (zh) | 基于iptv系统的网页访问方法、终端和服务平台 | |
CN102497419A (zh) | 一种面向大规模请求的esb任务调度方法及调度系统 | |
CN102970349B (zh) | 一种dht网络的存储负载均衡方法 | |
CN103235727A (zh) | 局部动态表单引擎装置、系统及方法 | |
CN103259824A (zh) | 分布式数据存储系统中数据路由的同步方法和装置 | |
CN100396006C (zh) | 一种网格计算中节点间负载转移的方法 | |
CN117271583A (zh) | 优化大数据查询的系统及方法 | |
CN1905516B (zh) | 一种分配双向转发检测会话鉴别符的方法 | |
CN101719155A (zh) | 一种支持分布式多集群计算环境的多维属性范围查询的方法 | |
Jiang et al. | Embedding and reconfiguration algorithms for service aggregation in network virtualization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110928 Termination date: 20141217 |
|
EXPY | Termination of patent right or utility model |