Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Take a load off! Load testing your Oracle APEX or JDeveloper web applications

Geeeez, after demanding you unit test, system test, black box test, white box test, test-test-test everything, your manager is now demanding you load test your brand spanking new Oracle web application. How on earth can you do this?

This technical presentation will explain the concepts behind preparing for load testing, the Http protocol's request/response model, and live demonstrations using Oracle's Http Analyzer and Apache's JMeter to stress test your Oracle web application.

The presentation is suitable for anybody, be it DBAs or developers, who are concerned about the performance of any web based application, possibly an Apex or JDeveloper or 3rd party web application. Knowledge of Apex or JDeveloper is not mandatory for this presentation and they will not be covered in any depth.

  • Be the first to comment

Take a load off! Load testing your Oracle APEX or JDeveloper web applications

  1. 1. Take a load off! Load and stress testing your web applications (Apex, JDeveloper, web services and more) SAGE Computing Services Customised Oracle Training Workshops and Consulting Chris Muir Oracle Consultant and Trainer http://one-size-doesnt-fit-all.blogspot.com  Oracle ACE Director - Fusion Middleware
  2. 2. “Oh oh,….. those requirements….” Is our website slow to use?How many users can we support? Is the system useable by our regional offices via dialup? Are we sure our web application doesn’t crash under load? How much bandwidth does our website use? Can we support X users without system degradation? Does our system respond in a timely manner?
  3. 3. Image CC DiscoWeasel @ Flickr.com
  4. 4. • Applications moved to the web • Apex, ADF, SOA, SaaS etc • Potentially 1000’s of users • Systems move beyond 9 to 5 users • Peak periods = extreme demand • Quiet periods = near zero demand • Multi-tiers of complexity & performance issues Image CC kendiala @ Flickr.com The Need for Load & Stress Testing Web Applications
  5. 5. • Apache’s JMeter • Eviware’s SoapUI Image CC programwitch @ Flickr.com
  6. 6. So how does this web thing work anyway? Or “HTTP Protocol 101” • HTTP Request-Response Cycle • Headers and Body • Client Request Types: GETs and POSTs • Server Responses: Web pages and HTTP Error Codes Photographer unknown
  7. 7. Apache’s JMeter • http://jakarta.apache.org/jmeter/ • Load, stress and regression testing utility • Supports HTTP/HTTPS, JMS, JDBC, FTP, LDAP and Web Services • Simulates 1 or more users of your system • Free Image CC stan @ Flickr.com
  8. 8. Apache’s JMeter Demonstration Photographer unknown
  9. 9. Create: Thread Group
  10. 10. Set: # Concurrent Users
  11. 11. Set: # Sequential Runs
  12. 12. Create: HTTP Request
  13. 13. Define: Server Address
  14. 14. Define: Path
  15. 15. Define: Any URL Parameters
  16. 16. Create: Next HTTP Request
  17. 17. Image Miguel CD @ Flickr.com
  18. 18. Create: Thread Group
  19. 19. Create: HTTP Proxy Server
  20. 20. Define: Proxy Port
  21. 21. Define: Target (thread group)
  22. 22. Define: URL Pattern
  23. 23. Start
  24. 24. Internet Options
  25. 25. Connections
  26. 26. LAN settings
  27. 27. Use a proxy server for your LAN
  28. 28. Define: Address Define: Port
  29. 29. Visit Application
  30. 30. Recorded Session
  31. 31. Image (C) Google Inc.
  32. 32. Create: User Variables
  33. 33. Define: Each User State Variable
  34. 34. Reference • Stress & load testing web applications (even ADF & Apex) using Apache JMeter: http://one-size-doesnt-fit- all.blogspot.com/2009/06/stress-load-testing-web- applications.html • Configuring Apache JMeter specifically for Oracle's ADF 11g: http://one-size-doesnt-fit- all.blogspot.com/2010/04/configuring-apache-jmeter- specifically.html • Configuring Apache JMeter for Apex: http://one-size- doesnt-fit-all.blogspot.com/2010/05/configuring-apache- jmeter-for-apex.html
  35. 35. Define: Regular Expression Extractors
  36. 36. Define: Name
  37. 37. Define: User Variable
  38. 38. Define: Regular Expression
  39. 39. Define: No. Expression to Extract
  40. 40. Define: Occurrence to Extract
  41. 41. Identify ADF Parameters
  42. 42. Insert JMeter Parameters
  43. 43. Insert JMeter Parameter
  44. 44. Insert All Other JMeter Parameters
  45. 45. Create: Cookie Manager
  46. 46. Create: Response Assertion
  47. 47. Define: Response Assertions
  48. 48. Define: Not!
  49. 49. Create: Results Tree
  50. 50. [ Start JMeter ]
  51. 51. Start Run
  52. 52. Count Down
  53. 53. Results
  54. 54. Create: Aggregate Report
  55. 55. Results
  56. 56. Create: Graph Results
  57. 57. Other JMeter Uses • Bloat your blog visitor statistics • Denial of service attacks • On-line click fraud • Um, Disclaimer: don’t try this at home JMeter Out-of-the-Box Uses • Conditional testing • Periodic verification of internet host or vendor capacity • Tender software evaluation
  58. 58. Eviware’s SoapUI • http://www.soapui.org/ • Defacto web service load, stress and regression testing utility • Example: http://one-size-doesnt-fit- all.blogspot.com/2009/08/soapui-for-web-service- testing.html • Free Image CC stan @ Flickr.com
  59. 59. Eviware’s SoapUI Demonstration Image isabisa @ Flickr.com
  60. 60. [ View WSDL ] [ Start SoapUI ]
  61. 61. Image CC thornypup @ Flickr.com
  62. 62. SAGE Computing Services Customised Oracle Training Workshops and Consulting Questions and Answers? Presentations are available from our website: www.sagecomputing.com.au enquiries@sagecomputing.com.au chris.muir@sagecomputing.com.au http://one-size-doesnt-fit-all.blogspot.com

×