ActivityPub/ActivityStreams allows for instances to cache media from external instances, so depending on whether instances choose to do that (some do, some don't), you could either get media requests per-server (scales roughly with a nebulous decentralization-factor) or per-user (which can drag a machine to its knees for popular posts)
(and please no blockchain! 😂)