Load Testing for Fall 2007
This is the result of the Aug 28 Developer Meeting
Assumptions
Configuration
- 5 app servers
- 3000 concurrent users
- 600 users per app server
- 1 oracle db
Goals
- To determine where we fail (number of users/number of db connections)
- To determine what happens when we fail (slow down? exceptions?)
- To figure out what our optimal number of max connections is per db pool (for external and internal db)
- To produce some tuning recommendations for both app servers and dbs
Specifically:
- What are the costs for connection pooling incremental usage?
- Tell the DBA group what level of load they can expect
- Determine what happens when we hit the boundary case, and explore alternatives to existing architecture
Tests
- Try setting 1 or 2 connections for an app server and observe failure under load testing conditions
- Replicate load to max out connections
- Monitor internal and external connections under load
- Profile the full path of a user session test case in terms of db calls/resource consumption
- Run our current codebase versus HEAD
- Run our current db config versus RAC config
Options/What ifs
- Turn off presence
Programmer Tasks (Stories)
- Develop load tests (Mike's doing this)
- Modify distauth for load testing so it doesn't hit CAS/SecureWeb
- Explore/spec out what's involved in making one or more mviews static tables (for worst case that we can't tune mviews)