论文部分内容阅读
Web Services的迅速发展,使得网络资源的共享技术日趋完善,极大地扩展了网络中的可利用服务,为企业业务构建提供了较好的信息支撑。但是服务数量和种类的增多加重了服务选择的复杂度,尤其是用户对服务需求的变化,如对服务属性的偏好,使得服务代理对服务的选择增加了难度。
本文从服务代理的角度,针对用户提出的各种灵活多变的偏好需求,设计了服务选择的算法,从当前已经注册的所有web services服务中,选择一个最能满足用户需求的最优服务。该算法如下:1)将用户需求用逻辑图表示,采用动态链表存储用户的所有偏好,在对动态链表的遍历过程中,找出当前逻辑图的所有父元素集合,这些父元素总存在最优的结点,2)将这些父元素的最优结点找到后,简化逻辑图,并对动态链表的偏好表达式进行精简,消除所有已经找到最优结点的元素,3)在剩余的逻辑图对应的动态链表中再次找到当前的所有父元素集合,重复父元素最优结点的判定,依次循环。最终所有的属性元素都找到了满足用户要求的最优结点,4)服务提供者在已经注册的web services服务中,找到满足最优结点序列的服务,如果这些结点可以转化为数值表示,那么服务代理将给用户提供一个对各属性元素加权的机会,采用权重空间距离的计算方法,更进一步选择最优的服务,然后将该服务的信息返回给用户。