CN106790341B - 移动Web服务应用的自适应部署方法 - Google Patents
移动Web服务应用的自适应部署方法 Download PDFInfo
- Publication number
- CN106790341B CN106790341B CN201610810617.9A CN201610810617A CN106790341B CN 106790341 B CN106790341 B CN 106790341B CN 201610810617 A CN201610810617 A CN 201610810617A CN 106790341 B CN106790341 B CN 106790341B
- Authority
- CN
- China
- Prior art keywords
- web service
- mobile
- deployment
- mobile device
- service application
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/04—Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开的一种移动Web服务应用的自适应部署方法,克服了传统的应用划分方法虽然能够在移动Web服务应用部署前对应用进行一次划分的问题,能够部分节约移动设备资源,提高应用的执行性能但是无法适应移动设备资源信息的动态变化,当移动设备资源不足时,可能导致移动Web服务应用执行失败的问题,在能够适应移动设备资源的动态变化的基础上,不仅能够保证移动Web服务应用的正常运行,而且能够节约移动设备资源、提高Web服务应用的整体执行性能。
Description
技术领域
本发明涉及一种移动Web服务应用的自适应部署方法。涉及专利分类号H04电通信技术H04L数字信息的传输,例如电报通信H04L29/00 H04L 1/00至H04L 27/00单个组中不包含的装置、设备、电路和系统H04L29/02通信控制;通信处理H04L29/06以协议为特征的H04L29/08传输控制规程,例如数据链级控制规程。
背景技术
随着计算机技术和网络技术的迅速发展,Web服务以其语言独立、平台无关、协议标准化以及异构应用实现松散耦合的强大优势,在近阶段得到了前所未有的迅猛发展。所谓Web服务,可以理解为运行在不同计算机上的不同应用,不需要借助额外的第三方硬件或者软件,便可完成数据的交互。好处是便于各种平台之间以不同语言、不同技术开发的分布式应用能够相互协作,很好地实现了跨平台功能。
同时,随着移动互联网技术的迅猛发展,促进了传统信息系统向无线移动应用方向的发展,在移动设备上使用Web服务越来越受到人们的青睐。移动设备可以随时随地、灵活使用Web服务的优势越来越被人们所看重。移动Web服务是指利用移动设备访问在移动设备上或更加强大的基础设施服务器上部署的Web服务。移动Web服务的目的是随时、随地为资源受限的任何移动设备提供信息Web服务。
在移动无线环境中,移动设备的电池电量、CPU计算能力、网络的带宽、内存容量等资源十分有限。在这种资源受限的环境中,部署过多的资源能耗较大的Web服务势必会导致移动设备的存储能力和计算能力大幅度下降,进而导致Web服务的可用性降低。为了满足资源能耗较大的应用能够在移动设备上执行的需求,有人提出了Web服务应用划分理念,即在移动Web服务应用部署前,将Web服务应用分成若干部分,将包含复杂计算的部分划分到资源相对充足的远程服务器上执行,从而节约移动设备资源,提高Web服务应用的整体执行性能。
但是,移动Web服务应用在执行过程中,移动设备的资源信息是时刻变化着的,移动设备资源不足可能会导致移动设备的一些核心功能像正常的语音通话、短信Web服务等无法工作,同时,执行资源能耗较大的Web服务应用势必会导致移动设备的电池电量迅速消耗,最终可能导致移动Web服务应用执行失败。
发明内容
本发明针对以上问题,提出了一种移动Web服务应用的自适应部署方法,包括:
采集监控移动设备的性能参数值,对采集到的资源信息进行存储;
收集并存储移动设备性能参数值,按key-value形式存储,资源名称存储为key,资源的信息存储为value;
根据移动设备的性能参数值和预设的划分目标,计算移动Web服务应用中每个Web服务的分别在远程和本地的执行代价;
若所述Web服务的本地执行代价大于远程执行代价,将该Web服务划分到远程执行;否则,将该Web服务在划分在本地,即由移动设备执行;
根据形成Web服务应用中的每个Web服务的执行规划,确定Web服务应用整体的划分方案;
划分依据如下:
集合WS={WS1,WS2,...,WSi,...,WSn},其中1≤i≤n,n是正整数,来表示移动Web服务应用,WS中的每个Web服务WSi在移动设备上的执行时间为Tlocali,在远程服务器上的执行时间为Tremotei,输入数据总量为Dreqi,结果数据总量为Drespi,本地与远程之间数据的传输时间为Ttri,数据的传输时间包括数据上传时间和数据下载时间;假设每个Web服务都有自己独立的数据集,在正常联网的情况下,当一个Web服务WSi就绪时,移动设备在以下两种执行方式中作决策:
Web服务WSi部署在本地执行:其执行代价等于该Web服务执行时移动设备的资源消耗和该Web服务在移动设备上的执行时间的加权平均之和,执行代价公式为:
其中,E1表示Web服务部署在本地时的执行代价,PlocalTlocali表示Web服务在本地执行期间产生的设备能耗;
Web服务WSi部署在远程服务器上执行:其执行能耗等于该Web服务执行时数据上传和下载所需能耗之和,其总执行时间等于Web服务在远程服务器上的执行时间和数据传输时间之和,执行代价公式为:
其中,E2表示Web服务部署在远程时的执行代价,表示数据上传所花费的时间,表示数据上传所需能耗;表示数据下载所花费的时间,表示数据下载所需能耗;Tremotei+Ttri表示Web服务在远程服务器上执行时的总执行时间;
当Web服务WSi的本地执行代价E1大于远程执行代价E2时,则将Web服务WSi划分到远程服务器上执行;
划分完成后,移动设备和工作站分别访问所述的移动MOBILE服务器和远程PC服务器,根据执行序列分别运行Web服务;并由服务器生成各自的执行记录。
作为优选的实施方式,还具有调度步骤,在运行过程中根据约束条件,对当前移动设备的资源情况进行分析,判定是否调整部署Web服务;
所述的约束条件至少包含:
约束条件1:移动设备的剩余电量低于最大值的60%;
约束条件2:移动设备的可用内存容量低于最大值的30%;
约束条件3:移动设备的CPU使用率大于70%;
当任何一个约束条件达到其临界值时,所述的调度单元对移动Web服务应用进行自适应部署调整;
若判定需要重新部署Web服务,部署单元根据公式1和公式2对当前待执行的Web服务进行重新划分,给出当前约束条件下最优部署方案;调度单元根据当前最优部署方案调度相应的Web服务运行位置,完成Web服务应用的自适应部署。
作为优选的实施方式,还具有文档编辑/解析步骤;
该步骤管理和生成移动Web服务应用的描述文档,在部署开始前,解析当前的移动Web服务应用对应的描述文档,获得当前移动Web服务应用的交互会话和静态属性信息,进而生成所述的Web服务执行序列。
更进一步的,所述的交互会话和静态属性信息,Web服务交互会话用于Web服务间交互关系的建立;Web服务的静态属性信息至少包括Web服务操作和操作参数,在调用Web服务的时候使用。
更进一步的,移动Web服务应用采用XML格式的协同组合建模语言CCML(Cooperative Composition Modeling Language)Web服务组合语言进行描述。
作为优选的实施方式,还具有初始化步骤,该步骤根据描述文档生成的Web服务应用的初始化部署方案;
该方案存储在部署方案库中,采用key-value的形式对数据进行存储,Web服务的名称为key,Web服务的部署位置为value。
作为优选的实施方式,所述的资源信息包括:CPU时钟频率、CPU使用率、可用内存容量、剩余电池电量和当前的网络状态以及以上资源对应各自的性能参数。
作为优选的实施方式,当所述的调度单元判定需要重新部署Web服务时:
如果涉及到的Web服务的部署位置未发生变化,不做任何处理,直接恢复执行;
如果Web服务的部署位置发生变化,重新调整部署方案,重新部署Web方案。
更进一步的,若需要将该Web服务从本地/移动设备调整到远程服务器上执行:
首先将该Web服务从本地服务器上卸载,然后通知远程服务器执行预先编写好的部署脚本,将该Web服务部署到远程服务器上,在收到Web服务部署成功的应答消息后,通知Web服务调度器根据调整后的部署方案恢复执行;
若需要将该Web服务从远程服务器上调整到本地执行,将该Web服务部署到本地服务器上,直接恢复执行。
由于采用了上述技术方案,本发明公开的一种移动Web服务应用的自适应部署方法,克服了传统的应用划分方法虽然能够在移动Web服务应用部署前对应用进行一次划分的问题,能够部分节约移动设备资源,提高应用的执行性能但是无法适应移动设备资源信息的动态变化,当移动设备资源不足时,可能导致移动Web服务应用执行失败的问题,在能够适应移动设备资源的动态变化的基础上,不仅能够保证移动Web服务应用的正常运行,而且能够节约移动设备资源、提高Web服务应用的整体执行性能。
附图说明
为了更清楚的说明本发明的实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的系统模块图。
具体实施方式
为使本发明的实施例的目的、技术方案和优点更加清楚,下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚完整的描述:
如图1所示:为了能够更加直观的说明本发明公开的移动Web服务应用的自适应部署方法的实现方式,现结合一定的硬件加以描述,方便本领域技术人员直观了解本发明的具体实施过程。
(1)资源感知单元
与移动Web服务应用同步运行,时刻监测移动设备的可用资源情况,并对获取的资源信息进行保存,供其他单元读取。在执行过程中,资源感知单元收集当前设备的资源信息,如CPU时钟频率、CPU使用率、可用内存容量、剩余电池电量以及当前的网络状态(端到端网络连接带宽)等。例如,通过Android系统自身的广播机制可以对当前的电池电量进行感知,其原理是每当电池电量发生变化时系统会进行全局广播,开发者只需编写相应的拦截器对广播信息进行拦截,便可获取到当前剩余的电池电量信息。
(2)资源信息库
用于存放资源感知单元收集的移动设备的资源信息,供初始化单元和分析单元读取。为了方便读取,使用key-value的形式仅对最新的资源信息进行存储,资源的名称为key,资源的信息为value。
(3)CCML文档编辑单元。在本发明中,采用XML格式的Web服务组合建模语言CCML(Cooperative Composition Modeling Language,协同组合建模语言)对移动Web服务应用进行描述,该语言不仅能够清楚地描述服务的静态信息,而且能够描述服务之间的行为交互。
CCML文档编辑单元用于管理和生成移动Web服务应用描述文档。在对移动Web服务应用进行初始化之前,使用CCML文档编辑单元生成移动Web服务应用的描述文档(.ccml文件),供CCML文档解析单元读取。
(4)CCML文档解析单元。用于读取和解析移动Web服务应用描述文档(.ccml文件),解析单元从CCML文档中获得服务交互会话以及服务的静态属性信息,进而生成服务执行序列。服务交互会话用于服务间交互关系的建立,服务的静态属性信息包括服务操作、操作参数和服务地址等,在调用服务的时候使用。
下面对服务执行序列、服务交互会话以及服务操作、操作参数和服务地址等进行解释。
1)服务执行序列。用于表示移动Web服务应用中服务的执行顺序,形如WS1-...-WSi-...-WSn,其中1≤i≤n,n为正整数,WSi表示移动Web服务应用中第i个待执行的服务。
2)服务交互会话。用于建立两个交互服务之间的交互关系,由服务双方的行为轨迹组成。服务的行为轨迹代表该服务的行为,由服务交互事件(createChannel、readChannel、writeChannel、invoke等)组成。整个移动Web服务应用的行为轨迹代表整个应用的执行。
下面采用CCML Web服务组合语言描述一个简单的服务交互过程。
以上XML文档描述了两个服务之间的交互,首先创建通道CPChannel,调用第一个服务customer,得到的结果写入CPChannel通道,之后再从CPChannel通道读出结果传递给provider服务,调用provider服务,再创建通道PCChannel,把反馈的信息写入PCChannel通道,customer服务从通道中读取反馈信息并处理。
3)Web服务包含服务操作、操作参数和服务地址。首先采用CCML Web服务组合语言描述一个Web服务。
以上XML文档描述了一个Web服务,其名称是customer。该服务包含一个操作cusOp,该操作包含一个字符串类型的输入参数i_c和一个字符串类型的输出参数o_c。该服务的地址是http://169.254.96.182:8080/axis2/services/cusService?wsdl。
(5)初始化单元
在移动Web服务应用首次运行时,会进行初始化:首先读取服务执行序列,然后根据设备当前的资源信息对移动Web服务应用进行初始划分和部署,生成初始部署方案,并将服务执行序列传递给服务调度单元,通知服务调度单元开始执行。初始化单元主要包括划分子模块和部署子模块。
划分子模块:其任务是根据移动设备的可用资源情况,决定移动Web服务应用中每个Web服务的执行位置,即在本地移动设备上执行还是部署到远程服务器上执行。最终给出一个移动Web服务应用的初始部署方案,并将初始部署方案传递给部署子模块进行部署。本发明将移动Web服务应用的初始划分问题转化为求解网络流图的最小割问题,并使用Dinic算法进行求解,实现对移动Web服务应用的初始划分。。
部署子模块:其任务是根据划分子模块提供的部署方案,将需要在本地执行的Web服务部署到MOBILE服务器上,将需要在远程执行的Web服务部署到PC服务器上。
(6)部署方案库
用于存放移动Web服务应用的部署方案。初始化单元生成初始部署方案。在应用运行期间,规划单元将重新规划后的部署方案传递给部署单元。部署单元负责更新部署方案库中的部署方案,供服务调度单元读取。为了方便存取,采用key-value的形式对数据进行存储,服务的名称为key,服务的部署位置为value。
(7)MOBILE服务器
MOBILE服务器是指把移动设备作为服务器来提供Web服务。用于接收客户请求,经过对请求信息的解析,MOBILE服务器做出应答。为了方便Web服务的动态加载和卸载,以“war包”的形式对Web服务进行部署。
(8)PC服务器
PC服务器是指带有固定IP地址的PC机,其作为服务器来提供Web服务。与MOBILE服务器相对应,将PC服务器称为远程服务器。主要用于处理移动端发来的请求,并对请求信息进行解析,进而做出应答。与MOBILE服务器类似,Web服务以“war包”的形式部署在PC服务器上。
(9)服务调度单元
首先对初始化单元传递过来的服务执行序列进行绑定,然后读取移动Web服务应用部署方案,根据部署方案,按照服务执行序列依次去相应的位置调用Web服务,直至应用执行结束。在服务执行的同时会生成日志文件,记录已被执行的服务。
(10)分析单元
分析单元根据预先设定的约束条件,对移动设备当前的资源情况进行分析,决定是否对移动Web服务应用进行自适应部署调整。如果不满足约束条件,则服务调度单元继续执行;如果满足约束条件,则通知服务调度单元暂停执行同时保护现场,并将分析结果提交给规划单元进行后续处理。
移动Web服务应用运行期间,需要根据约束条件判断是否对应用进行自适应部署调整。本发明设置以下约束条件,包括:
约束条件1:移动设备的剩余电量低于最大值的60%。
约束条件2:移动设备的可用内存容量低于最大值的30%。
约束条件3:移动设备的CPU使用率大于70%。
当任何一个约束条件达到其临界值时,所述的调度单元对移动Web服务应用进行自适应部署调整;
若判定需要重新部署Web服务,部署单元根据公式1和公式2对当前待执行的Web服务进行重新划分,给出当前约束条件下最优部署方案;调度单元根据当前最优部署方案调度相应的Web服务运行位置,完成Web服务应用的自适应部署。
(11)规划单元
规划单元接收到分析单元传递过来的分析结果,依据移动Web服务应用划分目标、采用移动Web服务应用划分算法对移动Web服务应用中待执行的那个Web服务进行重新划分,给出当前状态下最优的部署方案。如果该服务的部署位置未发生变化,则不做任何处理,直接通知服务调度单元恢复执行。如果服务的部署位置发生变化,将重新调整部署方案,并将重新调整后的部署方案传递给部署单元。
本发明中,移动Web服务应用的划分目标包括两个:
1)移动设备的资源消耗低。其中,移动设备的资源消耗包括网络传输能耗和本地执行的设备能耗。网络传输能耗主要来源于移动设备与远程服务器之间的数据传输,由于同一位置上的两个服务之间因数据传输产生的能耗相对较小,在此忽略不计。本地执行的设备能耗主要是指移动Web服务应用在本地执行时,移动设备系统的总体能耗开销,不仅仅包括CPU运行产生的能耗,也包括屏幕等其他辅助系统模块的能耗。
2)移动Web服务应用的执行时间短。执行时间主要包括:移动Web服务应用在本地执行所需的时间、移动Web服务应用在远程服务器上执行所需的时间以及本地和远程服务器进行数据传输所需的时间。
本发明定义以下相关参数:上行带宽、下行带宽、移动设备的CPU时钟频率、远程服务器的CPU时钟频率、输入数据总量、结果数据总量、服务在本地执行时间、服务在远程执行时间、数据传输时间、数据上传的能耗、数据下载的能耗、服务在本地执行时设备能耗、所有服务在本地和远程执行时间总和、所有服务在本地和远程执行设备能耗总和、执行时间权重以及设备能耗权重。相关参数的命名规则如表1所示。
表1相关参数的命名规则
参数命名 | 参数说明 |
B<sub>up</sub> | 上行带宽(kb/s) |
B<sub>down</sub> | 下行带宽(kb/s) |
C<sub>local</sub> | 移动设备的CPU时钟频率(KHz) |
C<sub>remote</sub> | 远程服务器的CPU时钟频率(KHz) |
D<sub>req</sub> | 输入数据总量(kb) |
D<sub>resp</sub> | 结果数据总量(kb) |
T<sub>local</sub> | 服务在本地执行时间(s) |
T<sub>remote</sub> | 服务在远程执行时间(s) |
T<sub>tr</sub> | 数据传输时间(s) |
P<sub>up</sub> | 数据上传的能耗(w/s) |
P<sub>down</sub> | 数据下载的能耗(w/s) |
P<sub>local</sub> | 服务在本地执行时设备能耗(w/s) |
Total<sub>t</sub> | 所有服务在本地和远程执行时间总和(s) |
Total<sub>p</sub> | 所有服务在本地和远程执行设备能耗总和(w) |
w<sub>t</sub> | 执行时间权重 |
w<sub>p</sub> | 设备能耗权重 |
用集合WS={WS1,WS2,...,WSi,...,WSn},其中1≤i≤n,n是正整数,来表示移动Web服务应用,WS中的每个服务WSi在移动设备上的执行时间为Tlocali,在远程服务器上的执行时间为Tremotei,输入数据总量为Dreqi,结果数据总量为Drespi,本地与远程之间数据的传输时间为Ttri,数据的传输时间包括数据上传时间和数据下载时间。假设每个服务都有自己独立的数据集,在正常联网的情况下,当一个服务WSi就绪时,移动设备在以下两种执行方式中作决策:
1)服务WSi部署在本地执行。其执行代价等于该服务执行时移动设备的资源消耗和该服务在移动设备上的执行时间的加权平均之和,执行代价公式为:
其中,E1表示服务部署在本地时的执行代价,PlocalTlocali表示服务在本地执行期间产生的设备能耗。
2)服务WSi部署在远程服务器上执行。其执行能耗等于该服务执行时数据上传和下载所需能耗之和,其总执行时间等于服务在远程服务器上的执行时间和数据传输时间之和,执行代价公式为:
其中,E2表示服务部署在远程时的执行代价,表示数据上传所花费的时间,表示数据上传所需能耗;表示数据下载所花费的时间,表示数据下载所需能耗;Tremotei+Ttri表示服务在远程服务器上执行时的总执行时间。
当服务WSi的本地执行代价E1大于远程执行代价E2时,则将服务WSi划分到远程服务器上执行。因此,可以将移动Web服务应用的划分问题定义为:给定服务集合WS和当前设备的资源信息,计算并比较服务WSi在不同执行方式下的执行代价,选取其中执行代价较小的方案执行服务。
移动Web服务应用划分算法包含以下四步:
1)加载移动Web服务应用中待调整的服务和移动设备资源信息。
2)计算当前状态下资源的相关参数值,根据公式1和公式2求出待调整的服务在本地及远程的执行代价。
3)分析比较服务在本地及远程的执行代价。如果服务的本地执行代价大于远程执行代价,将服务划分到远程执行。如果服务的本地执行代价不大于远程执行代价,服务在本地执行。
4)整理划分结果,给出移动Web服务应用在当前状态下的最优部署方案。
(12)部署单元
部署单元首先接收重新规划后的部署方案,然后对待执行的服务进行重新部署,如果需要将该服务从本地调整到远程服务器上执行,则首先将该服务从本地服务器上卸载,然后通知远程服务器执行预先编写好的部署脚本,将该服务部署到远程服务器上,在收到服务部署成功的应答消息后,通知服务调度单元根据调整后的部署方案恢复执行。如果需要将该服务从远程服务器上调整到本地执行,只需将该服务部署到本地服务器上即可,无需卸载远程服务,部署操作完成后通知服务调度单元恢复执行。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (9)
1.一种移动Web服务应用的自适应部署方法,其特征在于包括:
采集监控移动设备的性能参数值,对采集到的资源信息进行存储;
收集并存储移动设备性能参数值,按key-value形式存储,资源名称存储为key,资源的信息存储为value;
根据移动设备的性能参数值和预设的划分目标,计算移动Web服务应用中每个Web服务的分别在远程和本地的执行代价;
若所述Web服务的本地执行代价大于远程执行代价,将该Web服务划分到远程执行;否则,将该Web服务在划分在本地,即由移动设备执行;
根据形成Web服务应用中的每个Web服务的执行规划,确定Web服务应用整体的划分方案;
划分依据如下:
集合WS={WS1,WS2,...,WSi,...,WSn},其中1≤i≤n,n是正整数,来表示移动Web服务应用,WS中的每个Web服务WSi在移动设备上的执行时间为Tlocali,在远程服务器上的执行时间为Tremotei,输入数据总量为Dreqi,结果数据总量为Drespi,本地与远程之间数据的传输时间为Ttri,数据的传输时间包括数据上传时间和数据下载时间;假设每个Web服务都有自己独立的数据集,在正常联网的情况下,当一个Web服务WSi就绪时,移动设备在以下两种执行方式中作决策:
Web服务WSi部署在本地执行:其执行代价等于该Web服务执行时移动设备的资源消耗和该Web服务在移动设备上的执行时间的加权平均之和,执行代价公式为:
其中,E1表示Web服务部署在本地时的执行代价,PlocalTlocali表示Web服务在本地执行期间产生的设备能耗;
Web服务WSi部署在远程服务器上执行:其执行能耗等于该Web服务执行时数据上传和下载所需能耗之和,其总执行时间等于Web服务在远程服务器上的执行时间和数据传输时间之和,执行代价公式为:
其中,E2表示Web服务部署在远程时的执行代价, 表示数据上传所花费的时间,表示数据上传所需能耗;表示数据下载所花费的时间,表示数据下载所需能耗;Tremotei+Ttri表示Web服务在远程服务器上执行时的总执行时间;Bup表示上行带宽(kb/s),Bdown表示下行带宽(kb/s),Clocal表示移动设备的CPU时钟频率(KHz),Cremote表示远程服务器的CPU时钟频率(KHz),Ttotal表示服务在本地执行时间(s),Pup表示数据上传的能耗(w/s),Pdown表示数据下载的能耗(w/s),Plocal表示服务在本地执行时设备能耗(w/s),Totalt表示所有服务在本地和远程执行时间总和(s),Totalp所有服务在本地和远程执行设备能耗总和(w),Wt表示执行时间权重,Wp表示设备能耗权重;
当Web服务WSi的本地执行代价E1大于远程执行代价E2时,则将Web服务WSi划分到远程服务器上执行;
划分完成后,移动设备和工作站分别访问所述的移动MOBILE服务器和远程PC服务器,根据执行序列分别运行Web服务;并由服务器生成各自的执行记录。
2.根据权利要求1所述的移动Web服务应用的自适应部署方法,其特征在于具有调度步骤,在运行过程中根据约束条件,对当前移动设备的资源情况进行分析,判定是否调整部署Web服务;
所述的约束条件至少包含:
约束条件1:移动设备的剩余电量低于最大值的60%;
约束条件2:移动设备的可用内存容量低于最大值的30%;
约束条件3:移动设备的CPU使用率大于70%;
当任何一个约束条件达到其临界值时,所述的调度单元对移动Web服务应用进行自适应部署调整;
若判定需要重新部署Web服务,部署单元根据公式1和公式2对当前待执行的Web服务进行重新划分,给出当前约束条件下最优部署方案;调度单元根据当前最优部署方案调度相应的Web服务运行位置,完成Web服务应用的自适应部署。
3.根据权利要求1所述的移动Web服务应用的自适应部署方法,其特征还在于具有文档编辑/解析步骤;
该步骤管理和生成移动Web服务应用的描述文档,在部署开始前,解析当前的移动Web服务应用对应的描述文档,获得当前移动Web服务应用的交互会话和静态属性信息,进而生成Web服务执行序列。
4.根据权利要求3所述的移动Web服务应用的自适应部署方法,其特征还在于所述的交互会话和静态属性信息;
Web服务交互会话用于Web服务间交互关系的建立;Web服务的静态属性信息至少包括Web服务操作和操作参数,在调用Web服务的时候使用。
5.根据权利要求3或4所述的移动Web服务应用的自适应部署方法,其特征还在于:移动Web服务应用采用XML格式的协同组合建模语言CCML(Cooperative Composition ModelingLanguage)Web服务组合语言进行描述。
6.根据权利要求1所述的移动Web服务应用的自适应部署方法,其特征还在于具有初始化步骤,该步骤根据描述文档生成的Web服务应用的初始化部署方案;
该方案存储在部署方案库中,采用key-value的形式对数据进行存储,Web服务的名称为key,Web服务的部署位置为value。
7.根据权利要求1所述的移动Web服务应用的自适应部署方法,其特征还在于所述的资源信息包括:CPU时钟频率、CPU使用率、可用内存容量、剩余电池电量和当前的网络状态以及以上资源对应各自的性能参数。
8.根据权利要求1所述的移动Web服务应用的自适应部署方法,其特征还在于当调度单元判定需要重新部署Web服务时:
如果涉及到的Web服务的部署位置未发生变化,不做任何处理,直接恢复执行;
如果Web服务的部署位置发生变化,重新调整部署方案,重新部署Web方案。
9.根据权利要求8所述的移动Web服务应用的自适应部署方法,其特征还在于:
若需要将该Web服务从本地/移动设备调整到远程服务器上执行:
首先将该Web服务从本地服务器上卸载,然后通知远程服务器执行预先编写好的部署脚本,将该Web服务部署到远程服务器上,在收到Web服务部署成功的应答消息后,通知Web服务调度器根据调整后的部署方案恢复执行;
若需要将该Web服务从远程服务器上调整到本地执行,将该Web服务部署到本地服务器上,直接恢复执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610810617.9A CN106790341B (zh) | 2016-09-08 | 2016-09-08 | 移动Web服务应用的自适应部署方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610810617.9A CN106790341B (zh) | 2016-09-08 | 2016-09-08 | 移动Web服务应用的自适应部署方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106790341A CN106790341A (zh) | 2017-05-31 |
CN106790341B true CN106790341B (zh) | 2019-11-22 |
Family
ID=58972132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610810617.9A Active CN106790341B (zh) | 2016-09-08 | 2016-09-08 | 移动Web服务应用的自适应部署方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106790341B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110012021B (zh) * | 2019-04-12 | 2021-06-22 | 福州大学 | 一种移动边缘计算下的自适应计算迁移方法 |
CN113360172B (zh) * | 2021-06-30 | 2024-02-27 | 李建 | 应用部署方法、装置、计算机设备及存储介质 |
CN115756823B (zh) * | 2022-10-20 | 2024-04-16 | 广州汽车集团股份有限公司 | 服务发布方法、装置、车辆及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101410803A (zh) * | 2006-01-24 | 2009-04-15 | 思杰系统有限公司 | 用于提供对计算环境的访问的方法和系统 |
CN101663647A (zh) * | 2007-04-25 | 2010-03-03 | 高通股份有限公司 | 决定是在本地启动应用还是远程启动应用作为webapp的装置 |
CN103313285A (zh) * | 2013-06-09 | 2013-09-18 | 深圳中兴网信科技有限公司 | 网络资源传输处理装置和网络资源传输处理方法 |
CN104025669A (zh) * | 2011-12-28 | 2014-09-03 | 英特尔公司 | 在设备之间共享的机会主义资源 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9992258B2 (en) * | 2015-01-13 | 2018-06-05 | Whatsapp Inc. | Techniques for managing a remote web client from an application on a mobile device |
-
2016
- 2016-09-08 CN CN201610810617.9A patent/CN106790341B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101410803A (zh) * | 2006-01-24 | 2009-04-15 | 思杰系统有限公司 | 用于提供对计算环境的访问的方法和系统 |
CN101663647A (zh) * | 2007-04-25 | 2010-03-03 | 高通股份有限公司 | 决定是在本地启动应用还是远程启动应用作为webapp的装置 |
CN104025669A (zh) * | 2011-12-28 | 2014-09-03 | 英特尔公司 | 在设备之间共享的机会主义资源 |
CN103313285A (zh) * | 2013-06-09 | 2013-09-18 | 深圳中兴网信科技有限公司 | 网络资源传输处理装置和网络资源传输处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106790341A (zh) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111401903B (zh) | 区块链消息处理方法、装置、计算机以及可读存储介质 | |
CN103841134B (zh) | 基于api发送、接收信息的方法、装置及系统 | |
US8005654B2 (en) | Method, apparatus and computer program product for intelligent workload control of distributed storage | |
CN106790341B (zh) | 移动Web服务应用的自适应部署方法 | |
US11468089B1 (en) | Synchronization of distributed ledger processes | |
US11182210B2 (en) | Method for resource allocation and terminal device | |
CN113422839A (zh) | 基于云计算的云手机系统及控制方法、介质及电子设备 | |
CN112966200A (zh) | 一种服务降级方法和渲染服务器 | |
CN114221954A (zh) | 文件传输方法及装置、电子设备及存储介质 | |
CN111510493A (zh) | 分布式数据传输方法及装置 | |
EP2450792A1 (en) | Method for allowing distributed running of an application and related pre-processing unit | |
CN110855787A (zh) | 基于Consul实现OpenResty动态负载均衡的方法 | |
CN107888631A (zh) | 一种可配置组合的接口调用方法和装置 | |
CN114928562B (zh) | 一种图计算平台的流量处理方法和系统 | |
CN115811481A (zh) | 一种交互服务测试方法、装置、计算机设备及存储介质 | |
CN105338058A (zh) | 一种应用更新的方法及装置 | |
CN112422566B (zh) | 远程调用处理方法、装置、存储介质及电子装置 | |
CN113747506B (zh) | 一种资源调度方法、装置和网络系统 | |
CN113852474A (zh) | 任务处理方法及网关、计算机可读存储介质、电子设备 | |
CN113746851A (zh) | 一种支持实时解析grpc请求的代理系统和方法 | |
CN115250276A (zh) | 分布式系统及数据处理的方法和装置 | |
CN113377710A (zh) | 一种数据获取方法、装置及电子设备 | |
CN114124508B (zh) | 一种应用登录方法及系统 | |
CN115174665B (zh) | 登录状态确定方法、装置、设备及存储介质 | |
EP2073490A1 (en) | Devices and method for invocation of a sequence of web services by means of a single request based message |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |