Елена Панина - drupal performance testing. Тестирование...
TRANSCRIPT
Drupal performance testing.
Тестирование производительности,
методика анализа производительности
DRUPAL
Summary
● Performance testing - for what?
● Tools
● Criterias and methods
● Example
● Conclusion
Performance testing - for what?
● Find a problem previously
● Evaluation of site possibilities
● Evaluation of implemented optimizations
● Regression testing
● Report to client
Tools
● Online services
● Desktop apps
● Console utilities
● Php
Tools
● Flexible
● Free
● A lot of inbuilt and additional modules and
plugins
Jmeter - why we use it?
Criterias and methods
● Response time
● Throughput
● Hits per second
Criterias:
Criterias and methods
1. Testcases - user behaviour emulation
2. Stand preparation
3. Load
4. Results analyze
Test strategy:
Example
1. Project A before optimization:
● no memcache
● Varnish doesn’t cache anything
● no ESI
1. Project A after optimization
● Enabled memcache
● Enabled ESI
● Varnish is configured
● Cache per roles
Initial data:
Example
Response time - “before”
Example
Response time - “after”
Example
Average value “before”: 9000ms
Average value “after”: 330ms
Results - response time
Example
Throughput - “before”
Example
Throughput - “after”
Example
Average value “before”: 6.2 transaction/sec
Average value “after”: 114 transaction/sec
Results - Throughput
Example
Hits per second - “before”
Example
Hits per second - “after”
Example
Average value “before”: 4 hits/sec
Average value “after”: 100 hits/sec
Results - Hits per second
Conclusion
● code (APC)
● function results
● views, filters, db requests
● HTML
● images
● static data - css, js, media
What can we cache?
Conclusion
cache
cache_block - rendered block array
cache_bootstrap - initializes after drupal install
cache_field
cache_filter - filtered data
cache_form - no affect on performance
cache_image
cache_menu - all menu links and parametres
cache_page - global cache for anonymous only
cache_path
cache_update - no affect on performance
cache_ctools - temp data
Cache segments - Drupal 7
Contacts
email: [email protected]