I recognize this may go against the philosophy of the network, but hey.
I’m talking about bloody S*RVERS … there, I said it
Server: A program running on a node, listening for requests, returning dynamically generated data. (HOW? Can we / will we have streams between nodes? But other forms of messaging could also be used, obviously.)
StructuredData blocks can act as proxies for the services: they holds the addresses of the the currently running instances, and they get updated by the owner(s) of the corresponding service (the group of servers, as a whole) whenever an instance goes online or offline. It’s dynamic DNS for the SAFE network.
This is an application layer thing, so anybody can implement it in their application without breaking anything
(well, if we have network streams or messaging)