[发明专利]用于预测多层计算机软件系统的性能的方法和设备无效
申请号: | 201180006016.8 | 申请日: | 2011-01-13 |
公开(公告)号: | CN102696013A | 公开(公告)日: | 2012-09-26 |
发明(设计)人: | Y.古;K.潘;A.辛赫;G.蒋 | 申请(专利权)人: | 美国日本电气实验室公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F15/16 |
代理公司: | 中国专利代理(香港)有限公司 72001 | 代理人: | 王岳;李浩 |
地址: | 美国新*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 预测 多层 计算机软件 系统 性能 方法 设备 | ||
相关申请
本申请要求于2010年1月13日提交的美国临时申请No. 61/294,593的利益,其全部内容包含于此以资参考。
技术领域
本发明涉及分布式计算。更具体地讲,本发明涉及用于预测在分布式计算机系统上运行的多层计算机软件系统的性能的方法和设备。
背景技术
多层系统或架构是一种计算机软件系统,其功能通过在分布式计算机硬件上运行的几个软件组件的协作来实现。使用多层软件架构建立许多基于互联网的软件服务,诸如商业、旅行、卫生保健和金融场所。在这种架构中,前端web服务器(例如,Apache服务器或Microsoft的IIS服务器)接受用户请求并把它们转发给处理请求的应用层(例如,Tomcat或JBoss服务器),并且必要的信息存储在存储层(例如,MySQL、DB2或Oracle数据库)中。
建立多层软件服务的关键挑战在于能够满足服务的性能要求。设计过程通常包括回答问题,诸如“在每一层中需要多少个服务器以便对于90%的请求提供50 ms的平均响应时间”。一旦建立,设计者随后经常担心当前架构是否能够满足未来的性能要求,例如,当由于服务的流行或极端事件(诸如,Slashdot效应或大规模DoS攻击)而导致请求工作量增加时。提高复杂多层应用的性能是重要的任务,但常见的第一尝试解决方案是投入更多的硬件资源并分割工作量。
云计算基础设施(诸如,Amazon的EC2和Google的AppEngine)已使扩展应用可用的硬件资源变得既便宜又快速。例如,Animoto在三天内把它的EC2实例从300扩展至3000。这种弹性基础设施允许应用高度可扩展,然而,设计者必须小心地决定在哪里放置这些可用资源以在应用性能方面实现最大利益。为了回答这种问题,关键的是知道当扩展分配给服务的资源时的性能提高(或性能缺乏,暗示瓶颈)。
准确地预测性能但并不实际按比例建立服务的能力能够显著地帮助这种服务的设计者提供高性能。然而,因为多层系统的复杂性质,预测多层系统的性能是有挑战性的。例如,典型的请求的处理需要不同层之间的复杂的相互作用。此外,这些应用具有重要的内部逻辑,例如,它们使用高速缓存并对最大线程的数量施加硬限制。最后,在扩展部署中,可能出现新的相互作用或瓶颈,或者已有瓶颈可能在不同层之间移位。
已提出许多统计方案(黑盒方案),这些统计方案试图通过推断随后用于预测性能的请求的端到端处理路径(诸如,远程过程调用(RPC)、系统调用或网络日志文件)建立整个系统的概率模型。这些技术是通用的,但缺乏高准确性。
白盒方案或技术使用系统特定知识以通用性为代价提高准确性。Magpie需要中间件、应用和监测工具的修改,以便产生能够由Magpie理解并分析的事件日志。Pinpoint通过修改中间件利用ID标记每个请求,且然后通过聚类和统计技术使失败的请求与引起失败的组件相关联。Standust也通过修改中间件对于每个请求使用ID,把所有日志放在数据库中,并使用数据库技术分析应用行为。
灰盒方案提供中间情况:它们与白盒方案相比具有较小侵入性,但比黑盒方案更准确。例如,vPath提出用于在多层系统中捕捉请求的端到端处理路径的新方案。vpath的关键观测在于:分配单独的线程用于处理多层应用中的各请求。这允许vPath把线程关联到与给定网络活动相关的系统调用,并因此准确地链接与单个客户端请求对应的各种消息。
已有方法分别地建模或模拟多层系统的每一层。由于在不同层的处理高度相关,所以这些方案在准确性方面受到限制。
因此,需要用于建模或确定多层系统的性能的改进的方法和设备。
发明内容
公开了一种用于预测在分布式计算机系统上工作的多层计算机软件系统的性能的方法。在一个实施例中,该方法包括:以时间选择性方式把客户端请求发送给多层计算机软件系统的软件组件的层;收集多层计算机软件系统的软件组件的所有层之间的业务轨迹(trace);收集在多层计算机软件系统的软件组件处的CPU时间;以及从收集的业务轨迹推断多层计算机软件系统的性能数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于美国日本电气实验室公司,未经美国日本电气实验室公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180006016.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种气液分离器
- 下一篇:一种可变功能计算机系统及其运算方法