Understanding how an application behaves under various production loads, especially during peak business demand, is critical to maintaining optimal user experience. Maintaining performance as application scales requires attention to architectural detail early in an application's design phase. Often, no matter how much hardware is thrown at a performance problem in production, scalability will not increase. The more modern an application, the more modern the infrastructure. This leads to more e-commerce leaders turning to a DevOps or lifecycle approach to application performance management.
DevOps calls for tight collaboration between development, test and production teams. Transaction-based performance-related information has to be visible to all groups in a view that's relevant to them. When a potential problem is identified, smooth communication between teams must be facilitated. Actionable information in a form required by application specialists provides the best chance for rapid problem diagnosis and resolution.
This proactive lifecycle approach not only reduces negative surprises in production (e.g., an application that worked well in test but failed to scale in production), it can also accelerate time to market for new features and services by bringing proactive performance management to development and test.
The increased use of third-party commerce frameworks and external services, ongoing end-user demands for more functionality such as mobile e-commerce, and the ever-evolving technological innovations including virtualization create very complex heterogeneous application environments.
To provide value in these environments, application performance management systems must easily integrate with pre-existing application architectures and management systems. They must be highly extendable to adapt to future needs. Modern systems are much lighter weight with 10 times more time to value, so reliance on professional services should be minimized. Application performance management solutions should adopt an open, community-supported model that makes future extensions and integrations easier and considerably more cost effective.