26
Top 10 Secrets for Speeding up SharePoint WebSites Derek Watson CTO, Aptimize Software [email protected]

Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson Final

Embed Size (px)

DESCRIPTION

Top 10 Secrets For Speeding Up Share Point Web Sites

Citation preview

Page 1: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

Top 10 Secrets for Speeding up SharePoint WebSitesDerek Watson

CTO, Aptimize Software

[email protected]

Page 2: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

Agenda

• You have 5 seconds• Performance Methodology• Top 10 secrets• How we did it: sharepoint.microsoft.com• Resources

Page 3: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

You Have 5 Seconds

• You have five seconds to make an impact– Engage interest, or leave forever– google.com

• 100 ms delay = 20% less searches

– shopzilla.com: • 25% reduction in load time• 7%-12% revenue increase

– findsomeone.co.nz• 25% reduction in load time• 13% more clicks per visitor

– Google recently announced that speed will affect search rankings

Page 4: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

Performance Methodology

Methodology• Goal: 5 seconds or less• Measure• Improve• Measure

What can we change?• Hardware• Platform• Application

Page 5: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

Understanding Website Speed

• Waterfall Diagram– Breaks down page load– Shows everything to

load the page

• Create diagram using– WebPageTest– Fiddler

Page 6: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

Sample Waterfall Diagram

• Server vs. Client time

Page 7: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

Sample Waterfall Diagram

• Server vs. Client time

Page 8: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

Sample Waterfall Diagram

• Server vs. Client time

Page 9: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

Sample Waterfall Diagram

• Server vs. Client time

Page 10: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

TOP 10 SECRETS

Page 11: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

1: Hardware + Platform

• Buy good hardware– Dedicated SQL Server– Web Cluster– SCSI RAID– Lots of RAM– Multiple CPUs

• SQL Server– Sizing + tuning + indexing– Blob cache

Goal: Server processing < 1 second

Warning: No secrets here

Page 12: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

2. Far-Future Expires

Reduce repeat-view load times 50%+ • Browser caches resources• Doesn’t check again until expiry• Reduces HTTP requests 90%• Challenge: Refreshing changes

Code: Add This HTTP Header to each resource

Expires: Wed, 13 Oct 2010 04:02:35 GMT

Page 13: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

3. Gzip Compression

Reduce first view load time 30%-40%• Reduces size:

– HTML– JavaScript– StyleSheets

• No effect on images: (JPEG, PNG, GIF)

Check for HTTP request header

Accept-Encoding: gzip, deflate

Page 14: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

4. Optimize JavaScript

Reduce load time 7%-10%• Merge JavaScript files into single file• Shrink JavaScript

– Remove comments– Remove whitespace

• Challenges:– Preserving functionality– Maintenance

Page 15: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

5. Optimize StyleSheets

Reduce start render up to 75%• Merge StyleSheets into single file• Shrink CSS in StyleSheet• Place StyleSheet at beginning of HTML• Page render starts after all StyleSheets are

loaded• Challenges:

– Maintenance

Page 16: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

6. Image Sprites

Reduce load 5%-15%• Merge images into

multi-image sprite• Change HTML to use

sprite• HTTP requests

reduced• Challenges:

– Maintaining the sprite– Changing HTML

Page 17: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

7. Image Inlining

• Reduce load times 1%-10%• Base64 encode CSS background images• Embed encoded data into CSS file• Reduces HTTP requests• Challenges

– Maintainability– Browser compatibility

Page 18: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

8. Reduce external references

• Reduce ads and syndication– Ads – YouTube videos– Links to external sites

• Each link opens a new connection– Each increases load time ≈ 0.5 seconds

• Solution:– Load at the end of page– Load in an iframe

Page 19: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

9. Flash and Silverlight

• Don’t use– Flash on home page– Silverlight on home page

• Both add– Load time– Start render time

LOADING… 15%

Page 20: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

10. Security

• Use Kerberos instead of NTLM– Reduces HTTP 401 network traffic – Requires extra configuration in AD

• Only use SSL where you really need it– Consumes CPU cycles– Content not cacheable

Page 21: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

DEMO: MEASUREMENT TOOLS

Page 22: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

Sharepoint.microsoft.com

Challenge• Improve performance for

microsoft.com site• High traffic, no downtime

Applied Methodology• Used 10 techniques

Results• > 50% reduction in load time

"The improvement in page loading time is tremendous."

Tony Tai, Product Manager, Microsoft Corporation

Page 23: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

Aptimize Website Accelerator

Aptimize software automates best practices for browser load times

Aptimize Doubles Website Speeds:

Reduces HTTP requests by merging CSS and JS files

Reduces images with CSS sprite and CSS inlining

Compresses content using minification + Gzip

Increases caching using far-future-expires

50% reduction in data traffic and load times

40% increase in server throughput

Used in over 300 websites and intranets

Page 24: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

Next Steps

• Website speed is front and center now• Increase your service level• Steps:

– Measure your site now– Apply 10 steps– Measure your site– Get connected to blogs, Linked-in, Twitter

Page 25: Top 10 Secrets For Speeding Up Share Point Web Sites Derek Watson   Final

Get Connected

• Blog– http://www.aptimize.com/blog

• Twitter– http://twitter.com/aptimize

• LinkedIn (search Groups Aptimize)– http://www.linkedin.com/groups?gid=2294848

&trk=myg_ugrp_ovr