Sharepoint - What are the maintenance actions that can be done on a SharePoint application to ensure optimum performance?
There's a couple of things I'd add to that:
- Database maintenance - best practice is to set up a SQL maintenance plan to do a DBCC CHECKDB, reorganize indexes etc. The authorative info is in the Database Maintenance whitepaper by Bill Baer
- On a similar note, make sure your DB backup strategy is appropriate to ensure transaction logs get truncated
- On a more day-to-day basis, ensure your app pool recycling is configured appropriately. It's common to schedule a recycle overnight, but be sure to run warm-up scripts immediately afterwards, and not to recycle multiple servers at the same time
Ensure you have an idea of the base performance of your system so create some performance monitoring logs and run them for a week so that you can form a baseline.
Suggest that you record CPU, Memory, Logical Disk and Network counters as a minimum.
Repeat the logging every month or so and then at least you can make monitor perfomance allowing you to make informed decisions on upgrades (with proof to management) and provide metrics if users complain about performance.
Also always move the IIS logs and SharePoint ULS log from their default location and onto a separate partition so that they dont get in the way or steal space from the base OS. On a number of occasions I have experienced SharePoint environments that have crashed or have performance issues due to lack of disk space on the c: drive.
Check that your SharePoint diagnostic logging is not set too verbose, when an issue occurs by all means switch the diagnostic logging to be more 'chatty' but once you have fixed the problem switch the diagnostic logging back.
HTH
Regards Simon