Recommendations for the Infrastructure layer:
– Do not use dynamic memory for SharePoint VMs because this is not
supported by SharePoint.
– Use VLANs to divide the traffic (i.e. a central admin site and end user
sites) and to make SharePoint more secure.
– Do not use time synchronization with the parent host for the SharePoint
VM because it can mess up SharePoint Timer jobs and led to
– Do not take any snapshots of a VM in a production environment because
these will degrade the performance of your VM.
– Use Jumbo frames on your network if you have the right equipment,
because they will help your network to perform faster.
– Check with your storage guy what NTFS allocation unit size is best for
your storage to improve the performance of your SharePoint site.
Recommendations for the SQL Server layer:
- Data partitions that holds databases should have an allocation unit size
of 64k (in most cases) to get the best performance from SQL server.
- You should put TempDB on a separate (faster) drive to boost
performance because this database is I/O intensive.
- Logs for your databases shouldn’t be on same drive as the database files,
again for performance reasons.
- MAXDOP must be set to 1 for SharePoint to work normally.
- You should restrict the minimum and maximum memory values for your
- Do not enable auto-create statistics on a SQL instance that hosts
SharePoint databases because is not supported.
- Use reasonable initial settings for your SharePoint databases, especially
the growth value (the default is 5 MB).
Recommendations for the SharePoint layer:
- You will have a couple of installers that you can modify for you needs
- use the PowerShell installer instead of the built-in Configuration Wizard.
- Use dedicated service accounts
- this is good security practice because
these accounts will have only the rights that they really need.
- Use caching
- this will speed up responses for end users.
- Use SSL for the central administration site.
- Patch your SharePoint regularly and take backups.
- Write the logs from SharePoint to another drive
- if you forget to set
logging up properly (i.e. trimming of logs), you can fill up the system
partition and stop the whole server.