Title: Capacity planning for web sites
1Capacity planning for web sites
2Promoting a web site
- Thoughts on increasing web site traffic but
- Two possible scenarios
3Scenario 1 sudden traffic increase
- Web site causes its own surge new marketing
- New link to another popular site
- Site mentioned by popular index slashdot effect
- Site hosts a web application used by other
applications
4(No Transcript)
5(No Transcript)
6Scenario 2 cumulative increase
- Occurs as site becomes more widely known
- Introduction of new technologies e.g. XML
increases load - Network effect increase in connections to a
site from other sites
7(No Transcript)
8Result
Web server inundated with requests
Resulting processes cause memory overload
Web server slows then crashes
9Performance issues
- Speed is first problem
- Components of web systems possible bottlenecks
- Content one web page many files
- Increased web services- increased no of hits
- Web traffic randomness of accesses
- Users perception of performance
10Solution capacity planning
- Estimates space, hardware, software,
infrastructure needed over future period - Takes into account projected growth in site usage
- Just in time add the capacity just before it
is needed no unused resources
11Answers the questions
Future needs?
What if.. scenarios
Will performance be scalable?
e.g. is bandwidth adequate?
e.g. can system handle load spikes?
What monitoring tools are available?
How can more capacity be provided?
12Why is capacity planning important?
- Ensure positive user experience
- Maximise productivity
- Avoid financial surprises
- Maintain stability and availability
- Arrange for emergency capacity
- Assess performance of new applications/architectur
es - Tittel (2002) Why plan web capacity?
13- Because capacity problems cant be solved
instantaneously - (Menasce Almeida (2001))
14Planning capacity
- Some definitions
- Clarifying requirements
- Planning activities
- Monitoring
- Predicting
- Estimating
- Action and review
15www.simac.be/solutions/ management/3.htm,
accessed 27.4.05
16Some definitions
- Relating to server
- Service level
- Service time
- Waiting time
- Relating to network
- Latency
- Throughput
- Bandwidth
- Utilization
- Quality of service
- Relating to web site
- Hits per second
- Errors per second
- Time-out rate
17Clarifying requirements
- What is the purpose of the site? How available
should it be? - How tolerant are the users?
- Have you analysed log files?
- How many HTTP operations per unit time expected?
- What is the average transfer size going to be?
- Will you provide any streaming media?
- Will the web server spawn additional processes?
- What other processes need to be run on the web
server or over the network? - What sort of scalability do you need?
- What is your budget? Can you force suppliers to
compete? - Future traffic and usage growth spare capacity
levels? - Killelea (2002)
18Planning activities
Understand environment
Workload characteristics
Workload model
Cost model
Workload prediction
Monitor performance
Performance model
Performance prediction
Cost/performance analysis
Adapted from Menasce Almeida (2001)
Plans
19Workload prediction
- Differentiate between types of workload
- Characteristics, e.g.
- Burstyness
- Large transfers
- Analysis
- Capacity trending
- Analytical modelling
20Measuring and predicting performance
- Which are the critical web site IT resources
- Average under-load response times
- Web server performance benchmarks and monitoring
tools - Scenario data sets
- Load testing and modelling
21Plan for
- How much bandwidth?
- Hits/second x average size of hit in bits
bits/second - How fast a server?
- Load balancing
- Load clustering
- Mirror servers
- How much memory?
- Memory-using components of server
- Operating system, web server configuration, web
content, server-side programs
22And
- Establish upgrade process for resources
- Scalability capacity interdependencies between
infrastructure components - Monitor actual traffic growth and resource usage
- Revise plan when any component changes (kit,
traffic or market)
23Ways of providing capacity/improving performance
- Reconfigure network
- Rewrite critical applications
- Reduce content load
- Proxy, caching and mirror servers
- Test using your performance model
24What influence can you have as a web
administrator?
- Cant directly influence Internet
- May not be able to influence resource decisions
- Write down capacity requirement
- Monitor performance, keep records
- Alter server configuration performance and
content - Plan for future scalability