The terms you’re looking for are Blasting and Importing. This isn’t a new idea, and plenty of Nostr relays already do this. Haven, which represents more than 10% of Nostr relays (if you trust nostr.watch stats), has supported Blastr and Import since the very beginning. And it wasn’t the first relay software to do so. Also, there are zero expectations that all relays should do this. Relays talking to other relays is extra functionality beyond their core role. It wouldn’t even make sense for all relays to act as aggregators and broadcasters to every other relay. Having thousands of relays syncing every note among themselves would be a huge anti-pattern in distributed systems and would ultimately make self-hosting impossible without datacentre-level infrastructure. There is no Global, and there shouldn’t be one. The Outbox model has its issues, but it’s a better way forward than relying on the handful of central relays & aggregators we had before. It makes Nostr much more resilient. So, to put it in your language: relays are relaying just fine, and they should keep relaying exactly as they are.

Replies (2)

Gorillas are mammals, but not all mammals are gorillas. You can cluster local subgraphs with Import, Blaster, Negentropy, etc. You can also have large aggregators and broadcasters, like what @semisol is building, which can provide something close to a “global” without much spam and at a fair price. This doesn’t mean every relay should do this. In fact, the purpose of many relays is exactly the opposite: to accept, store, and serve only a very specific set of notes, for example from a community or even a single pubkey. Such relays can easily run on a Raspberry Pi or a cheap VPS. Nostr is flexible enough to accommodate both extremes, and it should remain that way.