SharePoint 2013 Cache Recommendations
Updated: Dec 20, 2017
SharePoint Server 2013 provides four types of caches that help improve the speed at which web pages load in the browser:
SharePoint Server 2013 provides a disk-based cache on your front-end web server that stores files that are used by web pages, reducing the traffic between front-end web server and the database server. BLOB cache is configured at web application level and its turned off by default. We can specify which file extensions should be cached and which shouldn't. Typically we use BLOB cache on publishing sites where files are read-only. Storing the BLOB cache and the ULS log on the same drive can result in poor server performance. By default, the BLOB cache is set to 10 gigabytes (GB). If you have 100 GB of content, set the size of the cache to 120 GB on a drive that has at least 150 GB of space.
To configure BLOB modify web.config
BlobCache location="C:\BlobCache\14" path="\.(gif|jpg|jpeg|jpe|jfif|bmp|dib|tif|tiff|themedbmp|themedcss|themedgif|themedjpg|themedpng|ico|png|wdp|hdp|css|js|asf|avi)$" maxSize="10" enabled="false"
Add or remove file extensions
Modify maxsize in GBs
Page output cache
The page output cache stores different versions of the cached page, based on the permissions of the users who are requesting the page. Page output cache settings can be configured at the site collection level, at the site level, and for page layouts. By default, the page output cache is turned off. The page output cache uses cache profiles that specify how long items should be held in the cache. Cache profile can be configured at web application and site collection level.
Cache profile settings can be configured in the user interface at the site collection level by a site collection administrator, as well as at the web application level by an administrator on the front-end web server. The page output cache must be enabled at the site collection level before page output cache profiles can be configured at either the site collection level or web application level. If page output cache profiles are enabled at the web application level, the settings specified in Web.config will be used for all page output cache profiles, overriding any values that have been entered through the user interface at the site collection level.
To configure output cache useCacheProfileOverrides="true" in web.config
OutputCacheProfiles useCacheProfileOverrides="false" varyByHeader="" varyByParam="*" varyByCustom="" varyByRights="true" cacheForEditRights="false"
Stores objects —such as lists and libraries, site settings, and page layouts —in memory on the front-end web server. To use the object cache, you must be using the Publishing feature on your site. The object cache settings can be configured at the site collection level in the user interface by a site collection administrator, and is on by default. The maximum cache size can be configured at the web application level on the front-end web server to place a restriction on the maximum amount of memory that the cache will use for all site collections.
The object cache settings can be configured at the site collection level in the user interface by a site collection administrator, and is on by default. The maximum cache size can be configured at the web application level on the front-end web server to place a restriction on the maximum amount of memory that the cache will use for all site collections. For example, individual site collections might have the object cache set at 100 MB, while the web application might be set at 1 GB. In this case, no more than 1 GB of memory will be used by all the caches on the server.
To configure object cache change maxSize(MB) in web.config
Anonymous search results cache
The anonymous search results cache is primarily used by publishing sites that allow access to anonymous users. It saves search results from anonymous users and reuses them for later queries that are the same as the original query. This improves performance on site pages that use the Content Search Web Part.