The easiest and best way I have found to handle the situation is to throw up a media server. Because if you are generating enough traffic to need to spin up another instance, you are generally getting close to saturating your port as well.
There are really several different levels all of this can happen on. One thing you have to keep in mind as well is if you are load balancing thirty bees instances, they DO require you to use sticky sessions. In use sticky sessions, users will always access the same machine, so you will not run into issues of files being cached on one machine and the file not being created on the other machine.
If you are using a different form of load balancing, what you want to do is this. Create your site, create a logical storage block to handle the caches, img files, theme cache, and modules directory. Then create a mount point in the file system for your installation, where those directories are mounted in those locations. Then you want to package that as a machine instance that can be deployed over the network. This way, when your instances are deployed, they are preconfigured with the network storage mount points.
We could likely sit around and come up with a way to handle this on the application level, but there is not one way we could handle it where we would get close to the same performance of handling it on the OS level. Since it is about performance, we just need to stick with the most performant option.