presented by jacob wilson sharepoint practice lead bross group 1
TRANSCRIPT
1
SHAREPOINT 2007 PERFORMANCE TUNING
Presented by Jacob WilsonSharePoint Practice LeadBross Grouphttp://sharepoint.jacobtwilson.com
2
BROSS GROUP
BROSS GROUP BACKGROUND
Founded 2004 Based in Lakewood, CO Certified Woman-Owned Business Denver Business Journal Best Places to
Work Tier one supplier to over 40 clients in
CO
3
Consulting Staff Augmentation Project Delivery Application Development Direct Placement
BROSS GROUP SERVICES
Banking, Financial, and Mortgage Services Cable / Satellite Construction Manufacturing Education Government Retail Software Telecom Transportation
INDUSTRIES WE SERVE
Retain top talent by offering competitive compensation to our employees.
Keeping overhead low to better ensure success and satisfaction for our clients.
Provide excellent rates and ultimately a better value to our clients.
DELIVERING RESULTS, EXCEEDING EXPECTATIONS
7
ABOUT ME
MCTS Certified in MOSS 2007 Configuration MCTS Certified in PerformancePoint Server 2007 Application
Development SharePoint Practice Lead and Principal Consultant at Bross
Group Worked with SharePoint 2003 and 2007 over the past
several years Architecture, Installation, Upgrade, Configuration, Custom
Development, and Administration
Twitter: http://twitter.com/MOSSLead LinkedIn: http://www.linkedin.com/in/titan80 Blog: http://sharepoint.jacobtwilson.com
8
SHAREPOINT 2007 PERFORMANCE TUNING
9
AGENDA
Hardware IIS Settings Content Databases SQL Server Disks and File Groups Virtualization
10
HARDWARE
11
SMALL FARM
Server Role Processor Memory Disk Network
WFE/Application (1) ** x64 2.5GHz 4GB
6GB + 30% of the size of the indexed content + 25% free disk space 1Gbps
Database (1) x64 2.5GHz 4GB
120% Planned Storage + 6GB + Future Growth + Log Files + 25% free disk space 1Gbps
*x64 priority: SQL Server, then Application Server, then Web Front End Server WFE.
**Small Server Farms typically combine the Application & WFE Server role into a single server.
12
MEDIUM FARM
Server Role Processor Memory Disk Network
Web Front End/Query (2+) x64 Dual Core 3GHz 4GB
6GB + 30% of the size of the indexed content + 25% free disk space 1Gbps
Application (1+) ** x64 Dual Core 3GHz 8GB
6GB + 30% of the size of the indexed content + 25% free disk space 1Gbps
Database (2) *** x64 Dual Core 3GHz 8GB
120% Planned Storage + 6GB + Future Growth + Log Files + 25% free disk space 1Gbps
* x64 priority: SQL Server, then Application Server, then Web Front End Server WFE.
** The Application Server role typically hosts the Index Service and Excel Calculation Service in a Medium Server Farm.
*** SQL Clusters are typical in Medium Server Farm environments.
13
LARGE FARM
Server Role Processor Memory Disk Network
Web Front End/Query (4+) x64 Dual Core 3GHz 4GB
6GB + 30% of the size of the indexed content + 25% free disk space 1Gbps
Application (2+) ** x64 Dual Core 3GHz 8GB
6GB + 30% of the size of the indexed content + 25% free disk space 1Gbps
Database (2+) *** x64 Dual Core 3GHz 16GB
120% Planned Storage + 6GB + Future Growth + Log Files + 25% free disk space 1Gbps
*x64 priority: SQL Server, then Application Server, then Web Front End Server WFE.
** Typically there are two Application Server roles in Large Server Farm environments. One dedicated Index Server and one dedicated Excel Services Server. Both of these services are very process intensive.
*** Microsoft recommends one database server per 4 WFE’s for content database storage.
14
IIS SETTINGS
15
IIS WEB GARDEN – WHAT IS IT?
Within IIS you have the ability to assign multiple worker processes (w3wp.exe) to a given application pool. In traditional IIS web applications this can improve performance in the following two ways: When a worker process for an application
pool stalls another worker process can pick up and process the incoming requests
Round-Robin scheme helps balance workloads and reduces resource contention
16
IIS WEB GARDEN – WHEN TO USE IT?
Typically, never do this in SharePoint land More memory consumption More context switching due to inter-
process communication If you do use it start with a baseline, add
one additional worker process at a time, monitor, monitor, monitor, and don’t exceed 3 worker processes per application pool
17
IIS PROCESSOR AFFINITY
Allows you to tell IIS which worker processes to run on which processor
This allows for a better use of CPU caches
If you use this for your SharePoint application pools set a baseline, distribute worker processes across CPU’s based on resource consumption (even load), monitor, monitor, and monitor.
18
IIS APPLICATION POOL RECYCLING
Done by default in IIS around 2am to 4am in the morning
Good for releasing RAM by those custom developed features, web parts, and timer jobs
Don’t allow the application pools to be recycled during heavy load hours (business hours) as end-users will be impacted with longer page response times and possible service unavailable messages
19
CONTENT DATABASES
20
CONTENT DATABASES
Microsoft recommends 100GB max on the size of any given content database, why? Backup and Restore Page response time Disaster Recovery
21
SQL SERVER DISKS AND FILE GROUPS
22
SQL SERVER DISK SUB-SYSTEM
RAID 10 recommended for performance and redundancy
Place tempdb on it’s own physical hard disk
Place content databases on their own physical hard disk
Place transaction logs on their own physical hard disk
23
SQL SERVER DISK SUB-SYSTEM
Use multiple data files for large content databases and spread data files across physical hard disks if necessary
To increase search performance use multiple data files for the SSP search database One file group for index tables One file group for search tables
24
VIRTUALIZATION
25
VIRTUALIZATION
WFE Servers and Application Servers are okay Do not virtualize SQL Server instances Resource contention
During business hours After business hours (Backup) Custom features and web parts
Hyper-V Host: 64 bit architecture, 1 to 1 mapping of virtual CPU’s to physical CPU’s, and RAM based on guests (NUMA boundaries)
26
QUESTIONS???
27
USEFUL LINKS
Performance and Capacity Planninghttp://technet.microsoft.com/en-us/library/cc262971.aspx Tune Web Server Performancehttp://technet.microsoft.com/en-us/library/cc298550.aspx IIS and SharePointhttp://
blogs.msdn.com/joelo/archive/2007/10/29/sharepoint-app-pool-settings.aspx
SharePoint and Hyper-Vhttp://technet.microsoft.com/en-us/library/cc816955.aspx