I'm investigating the feasibility of migrating a multitude of virtual web hosted domains and associated mail server funtionality from EC2 instances ... and moving everything in-house on one or more Raspberry Pi servers with external USB hard drives.
Being on the end of a residential DSL (though a good one - Sonic.net), my upstream bandwidth will be the limiting factor.
Several of the domains have large media files.
I may have to have a hybrid solution where the basic web functionality is run off the Pi, but large files are hosted by some CDN.
UPDATE this guy has done some fantastic write-ups on just this subject.