Background
DotNetNuke is used for a broad range of websites; from single server installations to large enterprise class installs running in web farms. Because of the issues that are unique to web farms, the standard installation guidance is not sufficient. The
webfarm configuration guide outlines the recommended and supported configuration for setting up your DotNetNuke installation in a web farm environment.
Caching
To handle high traffic levels and deliver exceptional performance, web applications must include an integrated caching solution to keep the most commonly used data in memory. The Microsoft ASP.NET framework provides a basic caching solution. However, the basic caching solution is limited to a single web server because it has no built in capability to synchronize cache items across multiple web servers.
DotNetNuke includes an extra caching layer on top of ASP.NET. This extra layer allows web farm synchronization using a variety of approaches. The Community and Professional Editions both include a file system caching provider which relies on a specific web farm configuration that leverages a shared file server (SAN) to store cache files. The Professional Edition 5.1 also includes a web service caching provider. The web service caching provider is beneficial for serious business applications because it enables use of a distributed web farm without the need for a shared file server. In addition, it is less resource intensive on the server and more efficient in terms of managing cache item expirations.
The wiki has further detail on Caching Providers options.
Webserver configuration
The configuration of the webservers themselves are beyond the scope of this wiki, but in general there are two primary options - a shared filesystem (such as a SAN) or syncronised file systems. An example of using a shared filesystem can be seen
here . Common options use for file syncronisation include robocopy, windows DFS and scheduled tasks.