How does images work with federation? If 1m users on a big server look at my images that I posted on a small server, is that small server hit with that traffic? Or is all servers caching the image?
Depend on how it's setup. Some servers are setup to cache images, some don't. Mine for example doesn't and streams directly from source instead so i don't waste storage.
IIRC all text and posts are cached on each server that is federated with one another, while images are just referenced and loaded from the server they were posted on, so if you had an image post on your server, anytime someone wants to load that image it would hit your server