Top Banner
SharePoint Performance: Best Practices from the Field Jason Himmelstein [email protected] @ sharepointlhorn
24

SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

May 12, 2015

Download

Documents

SPTechCon

Technical Class:
Monday, March 4
8:30 AM - 9:45 AM
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

SharePoint Performance: Best Practices from the Field

Jason Himmelstein [email protected] @sharepointlhorn

Page 2: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

Jason’s contact & vitals Microsoft vTSP

virtual Technology Solutions Professional SharePoint Foundation Logger

http://spflogger.codeplex.com Web: www.sentri.com Blog: www.sharepointlonghorn.com Twitter: @sharepointlhorn LinkedIn: www.linkedin.com/in/jasonhimmelstein

Author of Developing Business Intelligence Apps for SharePoint http://bit.ly/SharePointBI

Page 3: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

Agenda

Infrastructure Design Analyze Customer Requirements Hardware requirements Server configuration Network recommendations Virtual vs. Physical

SQL Server Performance Pre-grow vs. Auto-growth I\O requirements Sizing recommendations Database Isolation

SharePoint Server Performance Tier isolation vs. Location Proximity Requirements Load balancing your App Tier Load testing in your environment Governance & Troubleshooting

Page 4: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

Infrastructure Design Analyze Customer Requirements

High Availability Disaster Recovery Budget Constraints Location Awareness Number of Concurrent Users

Page 5: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

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

Page 6: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

Infrastructure Design Server configuration – Small Farm

Page 7: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

Infrastructure Design Server configuration – Scaled Farm

Page 8: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

Infrastructure Design

Page 9: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

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

Page 10: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

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 Failover limitations

Page 11: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

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

Page 12: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

SQL Server Performance

Pre-grow databases Requires more space initially Dramatic increase in performance Databases like contiguous space

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

Page 13: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

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

Page 14: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

SQL Server Performance Sizing recommendations

Recommended limit for ContentDBs: 200G Maximum supported: 4TB

Includes Remote BLOBs Backup/Restore timing Simple vs. Full recovery mode

Page 15: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

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

Page 16: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

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

Page 17: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

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!

Page 18: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

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

Page 19: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

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

Page 20: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

…and now its time for…

Page 21: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

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

Page 22: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

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

Page 23: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

References Jason’s Blog Sentri, Inc SharePoint Foundation Logger

http://www.sharepointlonghorn.com http://www.sentri.com http://spflogger.codeplex.com My Article on SharePoint Pro

http://www.sharepointpromag.com/content1/topic/sharepoint-performance-troubleshooting-141506/catpath/sharepoint-server-2010 Cornelius J. van Dyk’s Blog

http://www.cjvandyk.com/blog Eric Shupps’s Blog

http://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

Page 24: SharePoint Performance: Best Practices from the Field by Jason Himmelstein - SPTechCon

Jason’s contact & vitals Microsoft vTSP

virtual Technology Solutions Professional SharePoint Foundation Logger

http://spflogger.codeplex.com Web: www.sentri.com Blog: www.sharepointlonghorn.com Twitter: @sharepointlhorn LinkedIn: www.linkedin.com/in/jasonhimmelstein

Author of Developing Business Intelligence Apps for SharePoint http://bit.ly/SharePointBI