2. Agenda
• About
• What is “Performance”
• Measuring performance
• Recipes
– User
– Server
– Framework
– Application
3. About Sergata
• Innovative Software Development
• Focus: Innovation | Startups | Entrepreneurs
• From 0 to 100 in 3 months
• Large scale projects of over 4 years
• R&D Dream Team of 55 full time developers
• Over 150 innovative projects world wide since 2006
6. “Performance”?
• IT doesn’t matter
• Single user
– Total server time (App + DB)
– Time for page to load (render)
– Perceived performance
• Concurrent users
– Impact of multiple users on the single user
experience
• Analysis
10. Measuring
• User
– Browsing the page…
– Your (non-IE) browser
– YSlow for FF
– http://www.webpagetest.org
• Load testing
– ab
– JMeter
11. YSlow
• Network
– Minimize HTTP Requests (Aggregation, Sprites)
– Use a Content Delivery Network (Domains)
– Gzip Components (CPU vs. Network)
• Caching
– Expires or a Cache-Control Header
– Make AJAX Cacheable
– Use GET for AJAX Requests
• Data
– Reduce the Number of DOM Elements
– Do Not Scale Images in HTML (Smush.it)
12. Content Types
• Cacheable content
– Images
– CSS/JS
– “Static” HTMLs
– Anonymous pages
• Personalized content
– Logged in users
– Session based data