Basically, you leave the responsability of scalability and interoperatibility up to the tools that you've chosen to handle this task.
the former approach has been in use for years when, in the pre-internet era, people were particularly concerned about performance and robustness, and seemed to ignore the issue of scalability.