Page 46 - 《软件学报》2021年第7期
P. 46

1964                                     Journal of Software  软件学报 Vol.32, No.7,  July 2021

                    内因.电子商务系统中的一个目标是将响应延迟(response latency,简称 resl)控制在服务级协议(service-
                 level agreement,简称 SLA) [22] 范围内.例如,1s 内,并忽略网络传输时间(即 resl<1s).另一个目标是使系统性能最大
                 化(即 max(w1p1+w2p2+w3p3)),其中,p1、p2、p3 代表了 3 种不同的服务质量要求(即偏好).
                    p1:高推荐.尽可能地保持较高的同类产品推荐率.
                    p2:快响应.尽可能快速地响应用户请求,即响应延迟越低越好.
                    p3:低超时.表示在服务级别协议内,尽可能保持较低的超时响应比例.
                    其效用函数如图 5 所示.w1、w2、w3 是分配给每个偏好的权重,且 w1+w2+w3=1.resl 和 3 个权重值为系统
                 内因数据.此外,电商网站的功能是通过调整推荐率,即可配置的参数 pr(也是系统内因数据)来实现资源需求的
                 调控.








                                           Fig.5    Utility functions for three preferences
                                                  图 5  3 个偏好的效用函数
                    外因.关于环境因素,对于这个运行在动态云环境中的应用,我们识别出 3 个具有非确定性的变量.
                    1)  用户优先级(user priority,简称 upr),表示为 3 个非功能需求,即偏好的优先级,3 个偏好对应了 6 种不同的
                 优先级排列方式.例如,第 1 种代表高推荐的优先级高于快响应,而快响应又优于低超时,即 p1>p2>p3,而第 2 种
                 代表 p1>p3>p2.
                    2)  计算能力(computing capacity 简称 ccp),由分配给该网站的 CPU 资源量来衡量.分配 400%的 CPU 意味
                 着这个网站可以独占物理机的 4 个核心,而 50%则意味着可以访问物理机的一个核心,且仅有一半的使用时间.
                    3)  用户数(user number,简称 usn),表示活跃的用户数.
                    我们将这些连续环境变量离散化,划分为网格化的离散点,如下表所示,以缩小自适应规则空间.

                                    环境变量           取值区间          #离散点数          间隔
                                      upr            1~6            6             1
                                      ccp         50%~400%          8            50%
                                      usn          100~4000         40           100

                    自适应规则.与部署环境绑定影响性自适应规则(即 IAP)的形式为“upr,ccp,usnresl,w1,w2,w3”.例如,当优
                 先级为 1,分配给系统 3 个完整 CPU 且当前有 100 个活跃用户时,将导致响应延迟为 0.31s,p1、p2、p3 的最优
                 权重分别为 0.88、0.06、0.06.具体来说,优先级越高,分配给偏好的权重越多.而在设计阶段独立制定的决定性
                 自适应规则(即 DAP)的形式为“resl,w1,w2,w3probadjust(x)”.例如,当响应延迟为 0.31 时,即该数据状态远低于
                 服务级协议设定的 1s,高推荐率的偏好可以进一步提升.因此,自适应动作将 pr(即推荐概率)提升为 75%,从而使
                 得系统性能最大化.规则的获取方式将在实验设置中进一步加以阐述.
                    由于环境开放且复杂,可能会有一些未知的环境因素会影响系统目标的满意度.例如,在不同的云部署环境
                 下,CPU 的处理能力(本文中,计算能力是指可用的 CPU 数量,而处理能力是指每个 CPU 的计算频率)不同,会导
                 致相同环境因素(即 upr,ccp,usn)下的响应时间不同.另外,用户思考时间,即用户两次请求的间隔时间,也会影响
                 实际的负载量,从而影响响应时间.如果开发者未能准确地识别出这些隐性的环境因素,适应于某一个部署环
                 境的自适应规则很可能不能有效地适用于另一个部署环境中(即两个部署环境中的处理能力或用户思考时
                 间有明显差异).在接下来的实验中,我们假设处理能力这个环境因素未被系统开发者知晓,从而未被显示地
                 建模成外因以及被考虑进自适应规则中,其对系统目标和偏好的影响是隐示的.另外,我们假设用户思考时间
                 原本也是未知的环境因素,然而随着时间的推进,该因素被发掘出来,用以代表部署环境的扩展.
   41   42   43   44   45   46   47   48   49   50   51