应用性能管理------Application Performance Management
Posted on 2009-05-15 10:37 鸡尾虾的壳 阅读(278) 评论(0) 编辑 收藏 举报Application Performance Management, or APM, refers to the discipline within systems management that focuses on monitoring and managing the performance and service availability of software applications.
APM can be defined as process and use of related IT tools to detect, diagnose, remedy and report application’s performance to ensure that it meets or exceeds end-users’ and businesses’ expectations. Application performance relates to how fast transactions are completed on behalf of, or information is delivered to the end user by the application via a particular network, application and/or Web services infrastructure.
There are two main methods by which applications performance is assessed for production applications. The first, measuring the resources used by the application, has been in use since computers have been used for business applications, and is still in use for most of the production applications in use today. The second, measuring the response time of applications is used whenever it is both possible and financially acceptable to do so (it is only possible to measure the response time of an application from the perspective of an end user for a tiny fraction of the total number of applications in production today).
Application Performance Management is related to End User Experience Management and Real User Management in that measuring the experience of real users in the use of an application in production is considered by many as being the most valid method of assessing the performance of an application in production.
The use of application performance management is common for web applications written to J2EE and Microsoft .Net platforms. All of the leading systems management vendors have J2EE and .Net APM products in their portfolios. These APM for J2EE and .Net based applications have the advantage of being able to measure response time from the perspective of the web server, and being able to provide root cause analysis for the likely causes of performance issues within the applications code executing in the J2EE or .Net environment. Many of these products also have connectors that monitor the transaction flow from the business logic layer of the application to the database server, or to external interfaces like web servcies. Some of these vendors also have HTTP appliances in their product line that can decode transaction specific response times at the web server layer.
The difficult issues in APM currently revolve around two trends in the IT industry. The first is that for many enterprises, only a small fraction of their business critical applications are web based and written to J2EE or .Net. For these enterprises who may have business critical applications like SAP that use "fat" Win32 clients, their APM need can only be met by engaging with vendors like Knoa, Tidal Software who offer deep End User Experience monitoring for a specific set of enterprise applications. The second issue is that many applications systems are being virtualized, which has the effect of breaking the validity of time based metrics gathered within the guest OS where the application is running. This requires a totally new approach to APM tuned to the requirements of virtualized systems.
复杂的企业级应用往往基于不同厂商的若干服务器或者中间件来构建。实现一个健状的APM解决方案对于保证SLA是必须的。
对于TIBCO, RTView是一个不错的第三方APM产品。