提升应用性能小诀窍:优化工作负载与软件路径


工作负载优化是指允许一个应用程序或一组应用程序通常也被认为是工作负载)通过底层硬件和架构/中间件层使其达到最大的可用性能。如果你的公司希望从所购买的计算机平台中获取最高效的应用性能,首先就应该确保工作负载已经足够优化,其次还应该去寻找那些能够整合软硬件路径的供应商们来协助。

使用正确的路径

供应商与IT购买者们通常使用三种方式来优化工作负载性能:任务调整、应用性能管理和软硬件路径优化。比如说,一个工作负载作为一个核心应用,除了会造成相当多的I/O负载之外,还必须具备非常高等级的安全环境,因此最佳方案就是将其放在一台大型机上。一个相对轻量级的工作负载,快速线程以及需要较低的服务质量QoS)要求例如较低的安全性、可靠性和可用性要求)最好使用x86服务器。应用性能管理的意思是,在本质上使用一套监控和控制的工具来方便使用者相对于供应商)调整他们的应用环境。

除了以上两个关键方式,此篇文件着重描述的是“软硬件路径优化”,通常以供应商为导向,使用各种方法来使一个工作负载经过硬件与操作系统环境,在中间件与架构层之间运作最迅速,并最终进入数据库与后端。这种路径优化通常由供应商来操作完成,这些供应商的特征是必须非常了解底层硬件和数据库,以及整个架构和中间件层--这就意味着为数不多的那些重量级IT玩家们,如IBM,Oracle和微软。

当应用性能成为瓶颈时,路径优化就变得非常关键。如果你只是一个系统集成商--作为一家不拥有这个应用以及架构/中间件和底层硬件的公司。在这种情况下,一个应用/工作负载将会与某个第三方的中间件程序相连,与某个第三方架构程序相连,再通过操作系统环境来处理数据。在这个案例中,这个集成商或这个项目的工程师将不得不去了解所有的最佳方式和最佳实践来精简此应用通向数据库的方式。此外,如要真正调整应用,集成商不得不去理解硬件层面不同的作用,以此来提升应用性能。我几乎从没见过哪个集成商能够提供此种级别的优化调整服务。

我最近与一个应用开发者聊天,他为一家公司定期开发软件。这位开发者告诉我他的公司经常能够为软件大幅度地提升软件性能,因为他们找到了如何通过中间件,架构和硬件层面来提升性能的方法。这种性能调整的能力赋予了这家供应商与其他不懂第三方软件路径优化供应商的特殊竞争优势。

作为软件路径优化的例子,让我们来思考IBM的Cognos软件发出的一个查询,Cognos软件是一款业务分析系列的产品。IBM拥有的“软件路径优化软件”Cognos,它能通过查询数据库获取信息,这些数据能够被存放在大型内存VLM)里作为内存处理。CPU被非常紧密的与内存子系统耦合,相对于不停地从磁盘子系统中运行读和写,这种方式直接导致了一个三倍的速度提升。再比如,模式化地最佳实践查询,SAP的NetWeaver业务仓库Business Warehouse)的查询反应速度能够比使用ad-hoc查询方式快55%。在加强系统管理的基础上,IT管理员们对于查询的工作方式和未来如何去调整它获得了更高的可视度。一位管理员使用管理工具在Oracle Essbase上进行查询调整能够达到提升70%的查询响应速度。此外,简化生命周期管理的结果也能够取得更多的性能节省--Cognos TM1能使速度快至多80%。

路径的需求与影响

你如何来知道哪些供应商们正在调整并优化他们的软件路径呢?可惜的是,这个短语“软件路径优化”并没有在计算机领域广泛利用。有些供应商使用“软件优化调整与集成”作为他们开发流程的一个组成部分。他们认为这并不是软件路径优化。取而代之,他们只会谈论他们已经如何优化完成他们的软件并可能指出他们的实施和调整后的性能比他们的竞争者更出色,仅此而已。

然而,如果你真正看到实际情况,许多供应商已经找出如何为信息架构和底层硬件取得高性能而需要进行的某些调整。换句话说,他们了解到如何通过架构和中间件层面,再进入数据库进行路径的优化调整 - 可能有时使用特殊的硬件来达到高性能的目的。

我发现许多IT购买者意识不到到路径优化能够大幅度提升应用性能的事实。这些购买者仅仅关注于商品的硬件和独立软件供应商ISV)的中间件/架构和进行系统管理的产品,即完成整个系统环境的搭建并使其运作。他们不经常做软件整合,那也就意味着他们无法从系统中获得较高的性能。就算这个系统环境只使用了30%的性能,他们也依然对这样的结果沾沾自喜。如果你的公司对高效比较关注的话--包括在正确的系统上运行正确的程序与进行应用的优化调整--你的公司则能够从现有的系统上获得更多的计算资源。你们的计算能力获取成本将会持续降低,能够在未来更好的扩展信息系统环境。最终,随着通过优化路径获得的性能优势,你的公司相对于那些不去调整工作任务,不懂得优化软件路径的那些低效率的竞争者们,将能够建立起无法撼动的竞争优势。

相关内容