Assuming you want more than simple single-server disk mirroring, the easiest way is to set up two file servers (each with RAID1 disks). Then use OS-level disk replication (google for "disk server mirroring failover" or something like that). Or for a more Java-centric approach, you can use
Coherence and implement a simple HA Crud interface (mirror on "put", read on "get" and failover if get fails). For extra fault tolerance, calculate and store (in the db) a per-file checksum to ensure that there are no undetected "page tears" or corruption in the file in the event of a server failure.
Later,
Jon Purdy
Tangosol, Inc.
Coherence: Cluster your Work. Work your Cluster.