O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Performance Engineering Basics

10.482 visualizações

Publicada em

With every passing day, organizations are becoming more and more mindful about the performance of their Software Products. However, most of them still on look-out for the basics of Performance Engineering.

According to a recent study by Gartner, fixing performance defects near the end of the development cycle costs 50 to 100 times more than the cost required for fixing it during the early phase of development. Hence, if a product suffers from serious performance issues it can be completely scrapped.

Performance Engineering ensures that your application is performing as per expectations and the software is tested and tuned to meet specified or even the unstated performance requirements.

We present you with a webcast on Performance Engineering Basics that would walk you through the elements and process of performance engineering, and also offers a methodical process for the same.

It also offers details on a load testing tool, and describes how best to utilize it.

Visit http: http://www.impetus.com/featured_webcast?eventid=10 to listen to the entire webcast (20 minutes).
To post any queries on Performance Engineering, write to us at isales@impetus.com

For case studies and articles on performance engineering please visit: http://www.impetus.com/plabs/casestudies?case_study=&pLabsClustering.pdf=

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Performance Engineering Basics

  1. 1. Performance Engineering: Better performance, Happy customers
  2. 2. Product Strategy <ul><li>Developing a s/w product with two strategies </li></ul><ul><li>Business Strategy </li></ul><ul><ul><li>Gain segment market leadership </li></ul></ul><ul><ul><ul><li>Early to market </li></ul></ul></ul><ul><ul><ul><li>High Quality offering </li></ul></ul></ul><ul><ul><li>Generate ROI </li></ul></ul><ul><ul><li>Increase profitability </li></ul></ul><ul><ul><li>Improved customer loyalty </li></ul></ul><ul><li>Product Management Strategy </li></ul><ul><ul><li>Design, implement, test and deploy the product to </li></ul></ul><ul><ul><ul><li>Meet explicitly stated functional requirements </li></ul></ul></ul><ul><ul><ul><li>Meet non-specified but innate expectations from the software </li></ul></ul></ul>
  3. 3. Performance Pitfalls <ul><li>Potential to cause all the work to be scrapped </li></ul><ul><li>Huge negative consequences of performance failure </li></ul><ul><ul><li>Damaged customer relations </li></ul></ul><ul><ul><li>Loss of business </li></ul></ul><ul><ul><li>Loss of credibility </li></ul></ul><ul><ul><li>Cost of delay & additional resources </li></ul></ul><ul><ul><li>Performance defect identified during maintenance stage could cost 50 to 100 times more to fix as it would have cost during early stage of development lifecycle. </li></ul></ul>
  4. 4. What is Performance Engineering ? <ul><li>Process by which software is tested and tuned with the intent of realizing the required performance </li></ul><ul><li>Performance categories </li></ul><ul><ul><li>Speed </li></ul></ul><ul><ul><li>Scalability </li></ul></ul><ul><ul><li>Stability </li></ul></ul><ul><li>Performance engineering helps IN </li></ul><ul><ul><li>Increase revenue by ensuring optimum system performance </li></ul></ul><ul><ul><li>Optimize provisioning & utilization of infrastructure </li></ul></ul><ul><ul><li>Improve availability by resolving performance & scalability </li></ul></ul><ul><ul><li>Reduce maintenance costs </li></ul></ul><ul><ul><li>Avoid system failure requiring scrapping & writing off development effort </li></ul></ul><ul><ul><li>Self impressive facts about the release </li></ul></ul>
  5. 5. Elements of Performance Engineering <ul><li>Performance testing & sizing </li></ul><ul><ul><li>Performance Regression Test, System Load testing, System Benchmarking </li></ul></ul><ul><li>Performance tuning and optimization </li></ul><ul><ul><li>Optimal tuning guidelines for production setup – JVM, Pool, logs, App/Web server, DB, OS, etc. </li></ul></ul><ul><ul><li>Effectively applying skills, technologies and tools </li></ul></ul><ul><li>System diagnostics </li></ul><ul><ul><li>End to end profiling, recommendations for overall system scalability </li></ul></ul><ul><li>Capacity planning </li></ul><ul><ul><li>Determine expected production capacity, Facilitate capacity management </li></ul></ul><ul><ul><li>Performance Centric development </li></ul></ul><ul><ul><li>Client side performance engineering </li></ul></ul>
  6. 6. Performance Engineering Strategy
  7. 7. Challenges in Performance Testing <ul><li>Performance engineering awareness </li></ul><ul><li>Right tool selection </li></ul><ul><li>Scripting expertise </li></ul><ul><li>Physical/practical resource limitations on number of human users </li></ul><ul><li>Appropriate Hardware setup </li></ul><ul><li>Governing the behavior of simulated users according to a set of policies </li></ul><ul><li>Consistent, repeatable actions </li></ul><ul><li>Accurate measurement of response times </li></ul><ul><li>Generation and comprehensive analysis of results </li></ul>
  8. 8. Features in an Ideal Load Test Tool <ul><li>Support for popular protocols viz. Http, Https, AJAX, WAP, SMTP etc… </li></ul><ul><li>Integrated resource monitoring </li></ul><ul><li>Simple and intuitive User interfaces and wizards </li></ul><ul><li>Easy to use parameterization features </li></ul><ul><li>Real time progress of the test runs </li></ul><ul><li>Support for high concurrency of virtual users </li></ul><ul><li>Sophisticated and comprehensive reporting and analysis capabilities </li></ul>
  9. 9. Tools & Utilities <ul><ul><li>Performance Testing </li></ul></ul><ul><ul><ul><li>LoadRunner, SandStorm, Silk Performer, Jmeter, Grinder, Webload, OpenSTA, </li></ul></ul></ul><ul><ul><li>Web Servers </li></ul></ul><ul><ul><ul><li>Apache </li></ul></ul></ul><ul><ul><ul><li>IIS </li></ul></ul></ul><ul><ul><li>Application Servers </li></ul></ul><ul><ul><ul><li>Apache Tomcat </li></ul></ul></ul><ul><ul><ul><li>Jboss </li></ul></ul></ul><ul><ul><ul><li>Weblogic </li></ul></ul></ul><ul><ul><ul><li>Websphere </li></ul></ul></ul><ul><ul><li>Databases </li></ul></ul><ul><ul><ul><li>Oracle </li></ul></ul></ul><ul><ul><ul><li>MS SQL Server </li></ul></ul></ul><ul><ul><ul><li>My SQL </li></ul></ul></ul><ul><ul><ul><li>PostgreSQL </li></ul></ul></ul><ul><ul><li>System Profiling </li></ul></ul><ul><ul><ul><li>HP Deep diagnostics, Jprobe, DynaTrace, Jprofiler, YourKit, InfraRed </li></ul></ul></ul><ul><ul><ul><li>GCViewer, HttpSniffer, </li></ul></ul></ul>
  10. 10. SandStorm <ul><li>Impetus’ Automated Performance Testing tool </li></ul><ul><li>Technology: Core Java, Swing, Networking, Multithreading, PostgreSQL, XML based test scripts, Object serialization </li></ul><ul><li>Features comparable to Industry standard load testing tools </li></ul><ul><li>Load test – Web based & Client server applications </li></ul><ul><li>Low cost and quick customization </li></ul>
  11. 11. SandStorm Components <ul><li>Recorder Record user actions in the form of scripts </li></ul><ul><li>Command Launcher Creation and execution of virtual users </li></ul><ul><li>Controller Assign the recorded scripts to virtual users and govern execution of scripts based on certain policies </li></ul><ul><li>Analyzer Collect and Analyze the results of executed scripts </li></ul>
  12. 12. Case I <ul><li>Background </li></ul><ul><ul><li>Recognized market and thought leader in Workforce management </li></ul></ul><ul><ul><li>Delivers Innovative solutions and solve complex workforce-related issues. </li></ul></ul><ul><ul><li>30 million users per day in 30,000+ hiring locations. </li></ul></ul><ul><ul><li>500+ Fortune 1000 clients includes: the largest consumer goods, automotive, telecom, customer service, payroll services. </li></ul></ul><ul><li>Challenges </li></ul><ul><ul><li>90% of customers use Applet version of the application </li></ul></ul><ul><ul><li>Support for load testing of the applets and java objects </li></ul></ul><ul><ul><li>Affordable proof of concepts for pre sales activities </li></ul></ul><ul><ul><li> </li></ul></ul>
  13. 13. Accomplishments <ul><li>Defined Performance testing strategy and process </li></ul><ul><li>Helped Client by setting up Test Lab with isolated LAN ( Completely free from other corporate network activity). Setup included </li></ul><ul><ul><ul><li>9 servers: Dual 3.2 Ghz, PentiuApp/Web servers: IIS, Jboss, Weblogic, Apache </li></ul></ul></ul><ul><ul><ul><li>Database servers: Oracle9, 10 & 11, SQL server2005 & 2008, </li></ul></ul></ul><ul><ul><li>m 4, 2 GB RAM, 500 GB HDD </li></ul></ul><ul><ul><li>15 + Agent machines for launching Virtual users </li></ul></ul><ul><li>SandStorm support for load testing of applets and java objects </li></ul><ul><li>Tested application with 5k concurrency levels </li></ul><ul><li>Dedicated support for deployment and customization </li></ul><ul><li>Improved customer satisfaction because of onsite benchmarking </li></ul>
  14. 14. Case 2 <ul><li>Background </li></ul><ul><ul><li>Leading telecommunication solutions and services provider </li></ul></ul><ul><ul><li>Instant messaging solutions for mobile devices </li></ul></ul><ul><ul><li>Innovative solutions for mobile and internet industry </li></ul></ul><ul><ul><li>Challenges </li></ul></ul><ul><ul><li>Load test product based on OMA IMPS mobile protocol </li></ul></ul><ul><ul><li>Simulate concurrency of 25k online users </li></ul></ul>
  15. 15. Accomplishments <ul><li>Created performance test scripts using SandStorm </li></ul><ul><li>Generate a load of 25k online users with 10% concurrency and each one sending messages to other </li></ul><ul><li>Created plug-in to simulate connection between device user and server to simulate production </li></ul>
  16. 16. Experience SandStorm <ul><li>Download SandStorm evaluation version </li></ul><ul><ul><li>http://www.impetus.com/plabs/plabs_sandstorm_eval </li></ul></ul><ul><li>Stand alone packaged product </li></ul><ul><ul><li>Usage based or Perpetual Licensing </li></ul></ul><ul><li>For any support/ clarifications contact : [email_address] </li></ul>