SharePoint Performance Optimization In 10 Steps for the IT Professional


Published on

10 Steps to Optimizing SharePoint 2010 and SharePoint 2007. This includes new performance and optimization information on SharePoint 2010.

Published in: Technology
  • Hey Joel Oleson hope you are doing great, nice presentation. SharePoint performance & scalability is one of the major issue these days. SharePoint performance optimization can be done using many ways, some tools are also available in the market which can be used for this purpose.

    @ wesnur NCachePoint name has been changed its new name is StorageEdge - which is one of the best SharePoint Performance and Scalability tools. You can find more details here
    Are you sure you want to  Yes  No
    Your message goes here
  • I've read the information about NCachePoint from the following link
    Are you sure you want to  Yes  No
    Your message goes here
  • thanks for this wonderful read. While there are many performance issues in SharePoint, there aren't many appropriate solutions available.

    One thing i just discovered is that caching can increase the SharePoint performance dramatically. I just read about a caching software called NCachePoint which not only caches BLOBs but also caches Views, Lists, Sessions and uses other content optimization techniques to improve SharePoint performance.
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

SharePoint Performance Optimization In 10 Steps for the IT Professional

  1. 1. Joel Oleson Contributions: SharePoint Product Architect Mike Watson Quest Software Aptimize Fpweb
  2. 2. Agenda Measuring Performance 10 Steps for Optimizing Performance Front End Backend Caching, Caching, Caching Dedicated Disks Compression Application settings Memory Index Optimization App Pools SharePoint Configuration Offloading Auth & SSL Page Optimization Webpart Optimization End to End Q&A
  3. 3. Fast performance = Happy Users better user experience more traffic more revenue
  4. 4. Understanding Performance Server Network Client Server Tuning Network Infra Upgrades Browser Render time Data Centers NIC Upgrades Page Optimization Content Delivery WAN Solutions Hardware, Driver and Networks overcoming latency OS Upgrades Offloading Compression Caching Differencing
  5. 5. Page Performance Methodology Methodology • Page Goal: 5 seconds or less • Measure • Improve • Measure What can we change? • Hardware • Platform • Application • Network
  6. 6. Free Tools for Measuring Performance Ping (for latency) Perfmon
  7. 7. Caching, Caching, Caching Client Cache Page Far Future Expires Server Cache Reduce SQL Round Trips Output Cache Publishing Site Collection Page Webparts Never Cache a Search Results not fully anonymous! Disk Based Caching Blob Cache Atom Feeds & RSS = 5 minutes by default
  8. 8. Gzip Compression Reduce first view load time 30%-40% Reduces size: HTML JavaScript StyleSheets No effect on images: (JPEG, PNG, GIF) SharePoint is configured for Collab workload out of the box… Lots of Reads/Writes Check for HTTP request header Accept-Encoding: gzip, deflate
  9. 9. Memory Out of Memory Minimize App Pools Dedicate App pool to customizations and consolidate all else SQL timeouts Warm up Users Complain about 1 minute render times Intermittent performance issues SpDisposeCheck Check for memory leaks, unclosed – Very common!
  10. 10. Webparts What to watch out for… Watch for closed webparts – very comon Force webpart maintenance page or Designer to delete closed webparts Poor performing webparts Dynamic Navigation – list based or cross site with no caching Cross site rollups Content Query Webpart Why doesn’t SharePoint ship with cross site collection rollups and what’s new webparts??? Performance!!! Msdn: Smart Core.js
  11. 11. Managing 2010 Perf Hosted by FPWeb
  12. 12. Identify Poorly Performing Code & Content Look for memory leaks recycle often and/or fix Avoid App pool memory limits or processor limits Look for processor intensive code Render customizations via load tests Identify Software boundaries Large & Wide lists Deep Large site collections with lots of webs Large DBs TechNet: Plan for software boundaries
  13. 13. Health Rules - Definitions Health Rules Runs on a Timer Job Create your own! Repair Auto- magically!
  14. 14. Performance Optimizations Cleaner Pages and XHTML Compliance Core.js size reduced 12% List retrieval optimized Content DB optimized for scale SQL Blocking reduced with list throttling Performance Point incorporated into SharePoint Server 2010 Distributed Indexing - Each crawl database can have many crawlers associated with it
  15. 15. Performance Controls HTTP Throttling - Every five seconds, a job runs that checks server resources Server CPU, Memory, Request in Queue, and Request Wait After 3 failed checks, server is throttled until a successful check. List Controls – List is automatically throttled to max 5000 items
  16. 16. Health Report – Slowest Pages Extensibility for reporting and possibilities are limitless
  17. 17. Performance Dev Dashboard Selected Scope general info SQL queries Info SPMonitoredScopes and WCF Calls their associated cost web part info Off – default, On, and Ondemand – best practice for intranets!
  18. 18. Top Performance Killers 1. Indexing/Crawling 2. Backup (SQL & Tape) 3. Profile Import 4. Users - Inefficient views (Throttling in 2010 helps) 5. Timer Jobs – i.e. User Sync for large #s of Users 6. Poor Storage Configuration 7. STSADM Backup/Restore (Replace with third party or 2010 unattached recovery) 8. Large List Operations Delete/Update 9. Network Saturation/Congestion, i.e. Streaming Video 10. Misconfigured Network
  19. 19. Why is SQL that important? SQL Health = SharePoint Health! Sub-optimal SQL perf will radiate to other components in the farm Slow Slow Slow response from SQL Server will result in App SQL queued App requests As the app slows down, so does SQL
  20. 20. Database Disk I/O Demand Most Demand Medium Demand Low Demand Search Config *Content.. Temp +SSP Model Tlogs Master New Logging in Service 2010 App Usage * Except during backup and Indexing + Except during Profile Import
  21. 21. Scaling SQL - Up Design is Paramount! Consider the following: Overall SQL Throughput (transactions/sec) Disk throughput (IOPS) Network throughput (MB/sec) Disk backup throughput (MB/sec) Network based backup throughput (MB/sec) Length of maintenance windows (hours -> minutes)
  22. 22. New SharePoint 2010 Databases Workload based optimization Config Search_Service_Application WSS_Content_GUID Admin_Content Crawlstore WSS_Content_GUID1… Application Registry Service SearchDB WSS_Content_GUID2… StateService PropertyStore Web Analytics Web Service WSS_Search Content Farm WSS_Usage Services SocialDB Reporting_DB ProfileDB (was SSP db) Staging DB SyncDB BDC_Service_DB Word Conversion Service Application Performance_Point ManagedMetadata Secure_Store_Service
  23. 23. Understanding Website Speed Waterfall Diagram Breaks down page load Shows everything to load the page Server/Client/first render Create diagram using Fiddler
  24. 24. Vendors for Speeding Up SharePoint Software Based Solutions Page & Performance Optimization – Dynamic/Automated Best Practices - Aptimize WAX Dashboard Monitoring and Insight – Quest Foglight, System Center Hardware Based Solutions WAN Accelerators – hardware devices used to compress, difference, and offload – Cisco, Citrix, Certeon Reverse Proxy Compression, SSL Offload and Caching – F5, Microsoft ISA & IAG
  25. 25. Guideline What you can do to optimize your pages… Minimize HTTP Requests Merges JS, CSS files into fewer files. Merges images into sprites Add an Expires or a Automatically adds far-future-expires headers to resources and Cache-Control Header uses auto URL versioning to ensure cached resources are kept up-to-date Gzip Components Components are Gzipped and cached on the server to reduce CPU load Put Stylesheets at the Top Stlyesheets are moved to the top of the page Put Scripts at the Bottom Scripts can be moved to the bottom (or anywhere) on the page Reduce DNS Lookups External resources can be cached and served from the local server Minify JavaScript and CSS JS and CSS are minified Remove Duplicate Scripts Duplicate JS files, stylesheets and images are removed Configure ETags ETags are stripped from the resources Optimize Images Images can be resampled, and GIFs converted to PNGs Optimize CSS Sprites CSS Sprites are created and organized horizontally Make favicon.ico Small Favicon is configured for caching, and inserted if it is missing, and Cacheable removing a 404 condition.
  26. 26. Challenge Improve performance for site High traffic, no downtime Applied Methodology Used 10 techniques "The improvement in page loading time is tremendous." Tony Tai, Product Manager, Results Microsoft Corporation > 50% reduction in load time
  27. 27. SharePoint 2010 Acceleration Hosted by FPWeb
  28. 28. Website Accelerator Automates best practices for browser load times Aptimize Blog Twitter (SharePoint Social Network) Contact: 800-935-8414 USA Contact: Outside USA:
  29. 29. Summary Memory, Disk and Network are frequent performance bottlenecks SQL is extremely important to SharePoint health and Performance Think IOPS when designing disk arrays Separate work loads: temp, log, search, content. SQL scales up and out. Don’t push the limits upward, but keep manageability and costs in mind when scaling out. SharePoint 2010 provides proactive management Check the HTML requests and how they affect performance with or Trial and improve your YSLOW score!
  30. 30. Resources WebPageTest Fiddler Visual Round-Trip Analyzer aspx?FamilyID=119f3477-dced-41e3-a0e7- d8b5cae893a3 Microsoft case study 9/09/28/how-we-did-it-speeding-up- sharepoint-microsoft-com.aspx IAB guidelines erfomance_BP_FINAL.pdf
  31. 31. Hosted SharePoint 2010 Over 10 years of SharePoint Hosting experience. 1st company in the World to host SharePoint back in 1999. Over 1,000,000 SharePoint users in 80 countries. Complete Server Control (unrestricted RDP access). Secure VPN & Active Directory Integrations. World class hosting network – 3 tier redundant ISP backbone. No up-front costs – one predictable monthly price. We are every bit SharePoint. We do one thing – very, very well.
  32. 32. Technology Responsibilities Multiple Technology Responsibilities Toughest Challenges Exchange 1. User Provisioning/de-provisioning 14% MIIS/ILM Active 2. Delegation of Admin Rights 16% Directory 44% 3. Compliance Reporting DNS 26% 4. Disaster Recovery Technology Used / Deployed • 99% MS Server OS • 90% Management Frameworks • 55% - MOM • 27% - HP OpenView • 21% - IBM Tivoli • 87% Exchange • 74% SharePoint Source: DEC 2008 Attendee Survey Whitepaper 38
  33. 33. 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
  34. 34. Sample Waterfall Diagram Server vs. Client time
  35. 35. Sample Waterfall Diagram Server vs. Client time