sharepoint performance - best practices from the field
DESCRIPTION
Want to avoid the performance mistakes before you make them? This in-depth session we will discuss how to properly position your SharePoint farm for success beginning with "hardware" and ending with troubleshooting methodologies to maximize performance. Find the pitfalls before you hit them from someone who has climbed out of the deep dark holes in the wild. Best Practices from the Field combines recommendations from Microsoft with the experience of trial & error.TRANSCRIPT
SharePoint Performance: Best Practices from the Field
Jason HimmelsteinSenior Technical Director, SharePoint
@sharepointlhornhttp://blog.sharepointlonghorn.com
2009 Atrion Networking Corporation
Jason’s contact & vitals
• Senior Technical Director, SharePoint at Atrion• Microsoft vTSP
– virtual Technology Solutions Professional
• SharePoint Foundation Logger – http://spflogger.codeplex.com
• Blog: www.sharepointlonghorn.com • Twitter: @sharepointlhorn • LinkedIn: www.linkedin.com/in/jasonhimmelstein• SlideShare: http://www.slideshare.net/jasonhimmelstein• Email: [email protected]
• Author of Developing Business Intelligence Apps for SharePoint– http://bit.ly/SharePointBI
Agenda
• Infrastructure Design
• SQL Server Performance
• SharePoint Server Performance
Infrastructure Design• Analyze Customer Requirements– High Availability– Disaster Recovery– Budget Constraints– Location Awareness– Number of Concurrent Users
2009 Atrion Networking Corporation
Infrastructure Design• Hardware requirements
– Web servers & Application servers
– SQL servers
• What constitutes a small/medium/large farm?
Developer or Evaluation environments
CPU: 4 cores, 64-bit requiredRAM: 4GB
Hard Drive space: 80GB
Production in Single Server or farm environments
CPU: 4 cores, 64-bit requiredRAM: 8GB
Hard Drive space: 80GB
Small FarmCPU: 4 cores, 64-bit
requiredRAM: 8GB
Hard Drive space: 80GB
Medium Farm CPU: 8 cores, 64-bit
requiredRAM: 16GB
Hard Drive space: 80GB
Large FarmUp to 2TB Content DBS
RAM: 32 GB From 2TB to 5TB Content
DBSRAM: 64 GB
2009 Atrion Networking Corporation
Infrastructure Design
• Server configuration – Small Farm
2009 Atrion Networking Corporation
Infrastructure Design
• Server configuration – Scaled Farm
2009 Atrion Networking Corporation
Infrastructure Design
2009 Atrion Networking Corporation
Infrastructure Design• Network recommendations– Traffic Isolation
• Web• Database• Search• Service Applications• Authentication
– Number of NICs per server– Limit the number of hops– Colocation of servers– Close location of Virtual Servers
2009 Atrion Networking Corporation
Infrastructure Design• Physical– Benefits• No virtualization overhead• Ability to target DBs to separate physical spindles • Only OS limits on Hardware• Simple Networking
– Drawbacks• Backup & recovery time• Limited snapshot ability• Costly & lacking Centralized Management• Budget constrained failover options
2009 Atrion Networking Corporation
Infrastructure Design• Virtualization– Benefits• Snapshot capability• Rapid system deployment• HA\DR ability • Centralized Management
– Drawbacks• Loss of minimum 8% compute for overhead• Limitations on addressing full hardware• Disks are stored as single/multi-file • Centralized Networking• Clustering complications
2009 Atrion Networking Corporation
• Pre-grow databases–Requires more space initially–Dramatic increase in performance–Databases like contiguous space
SQL Server Performance
2009 Atrion Networking Corporation
SQL Server Performance
• Auto-growth –Immediately change from 1m increments–Do not use “Grow by %” setting–50-100m maximum growth per required–Schedule maintenance task to check size & grow in off peak hours as required
2009 Atrion Networking Corporation
SQL Server Performance
• Instant File Initialization– Allows for faster execution – Does not fill that space with zeros• disk content is overwritten as new data is written to the files
– Log files cannot be initialized instantaneously
2009 Atrion Networking Corporation
SQL Server Performance
• I\O requirements DB Files RAID Level Optimization
1 TempDB data 10 Write
2 TempDB logs 10 Write
3 ContentDB data 10 Read\Write
4 ContentDB logs 10 Write
5 Crawl DB logs 10 Write
6 Crawl DB data 10 Read\Write
7 Property DB logs 10 Write
8 Property DB data 10 Write
9 Services DB logs 10 Write
10 Services DB data 5/10 Read\Write
11 Archive Content DB 5 Read
12 Publishing Site Content DB 5 Read
2009 Atrion Networking Corporation
SQL Server Performance• Sizing recommendations–Recommended limit for
ContentDBs: 200G• Maximum supported: 4TB– Includes Remote BLOBs
–Backup/Restore timing–Simple vs. Full recovery mode
2009 Atrion Networking Corporation
SQL Server Performance• Database Instance Isolation– Secure Store Database– SharePoint core databases– Content Databases– Search– Highly Transactional non-SharePoint DBs
• Drawback– Lose the central management in a single
SQL Server Management Studio window
2009 Atrion Networking Corporation
SharePoint Server Performance• Tier isolation vs. Location Proximity
Requirements– Separation via vLAN
• Less chatter• Increased hop count
– Collocating SharePoint in a single vLAN• Increased chatter• Lower hop count
• Key take away– Know your network, determine your topology
based upon traffic & requirements
2009 Atrion Networking Corporation
SharePoint Server Performance
• Load balancing your App Tier–Know your load–Scale based upon need, not
perception
• Find your choke point, then release the grasp
–Don’t assume, validate!
2009 Atrion Networking Corporation
SharePoint Server Performance• Load testing in your environment– Example• 2 Web Servers (4cores, 16GB RAM) using
NLB• 1 App Server (4cores, 16 GB RAM)• 1 SQL Server Instance (16cores, 128GB
RAM)
• Simple CRUD operations– Login, create list item, open item, modify item,
save item, delete item, log out
2009 Atrion Networking Corporation
SharePoint Server Performance• Load testing in your environment– Results• Farm was completely non-responsive at ~500 concurrent
users
– Root cause• Watching this test on the server side we found that we were
immediately CPU bound.
– Conclusion• Add CPUs or Web Servers to the farm to handle additional load
2009 Atrion Networking Corporation
…and now its time for…
2009 Atrion Networking Corporation
SharePoint Server Performance•Governance & Troubleshooting–Determine tolerance for custom solutions• Encourage Sandbox Solutions
–Require SPDisposeCheck–Require SPMonitored Scope –If you don’t have a Dev/QA Environment, you don’t have a Production Environment–Never test patches in Production–Educate on the Developer Dashboard
2009 Atrion Networking Corporation
SharePoint Server Performance• Governance & Troubleshooting–Never accept a solution that is not a WSP–Respect your users, or you won’t have any–Limit the number of Farm Admins–Minimize Server Sprawl–Audit your environment regularly–Survey your users regularly–Engage your Executive Sponsorship
2009 Atrion Networking Corporation
References• Jason’s Blog SharePoint Foundation Logger
http://www.sharepointlonghorn.com http://spflogger.codeplex.com
• Seb’s Bloghttp://www.sebmatthews.net
• Jason’s Article on SharePoint Pro http://www.sharepointpromag.com/content1/topic/sharepoint-performance-troubleshooting-141506/catpath/sharepoint-server-2010
• Eric Shupps’s Bloghttp://www.sharepointcowboy.com
• SharePoint Server 2010 Hardware and software requirements http://technet.microsoft.com/en-us/library/cc262485.aspx
• SharePoint Server 2010 Capacity Management: Software Boundaries and Limitshttp://technet.microsoft.com/en-us/library/cc262787.aspx
• Capacity Management and Sizing Overview for SharePoint Server 2010http://technet.microsoft.com/en-us/library/ff758647.aspx
• Capacity Planning for SharePoint Server 2010http://technet.microsoft.com/en-us/library/ff758645.aspx
• Performance Testing for SharePoint Server 2010http://technet.microsoft.com/en-us/library/ff758659.aspx
• Storage and SQL Server Capacity Planning and Configurationhttp://technet.microsoft.com/en-us/library/cc298801.aspx
• Performance and Capacity Technical Case Studieshttp://technet.microsoft.com/en-us/library/cc261716.aspx
• Monitoring and Maintaining SharePoint Server 2010http://technet.microsoft.com/en-us/library/ff758658.aspx
• Performance Testing for SharePoint Server 2010http://technet.microsoft.com/en-us/library/ff758659.aspx
• The Load Testing Kit for Visual Studio Team System http://technet.microsoft.com/en-us/library/ff823731.aspx
• Web Capacity Analysis Tool (WCAT) http://www.iis.net/community/default.aspx?tabid=34&g=6&i=1466
2009 Atrion Networking Corporation
Jason’s contact & vitals
• Senior Technical Director, SharePoint at Atrion• Microsoft vTSP
– virtual Technology Solutions Professional
• SharePoint Foundation Logger – http://spflogger.codeplex.com
• Blog: www.sharepointlonghorn.com • Twitter: @sharepointlhorn • LinkedIn: www.linkedin.com/in/jasonhimmelstein• SlideShare: http://www.slideshare.net/jasonhimmelstein• Email: [email protected]
• Author of Developing Business Intelligence Apps for SharePoint– http://bit.ly/SharePointBI