Replying to Avatar jack

Wow

... remembering this milestone at Twitter?

My relay is doing 40Mb/s serving about 400 clients. Something's not efficient here yet.

Reply to this note

Please Login to reply.

Discussion

Yes, clients (astral) are prone to requesting a ton of events, often multiple times.  I think they could be much more efficient.

I want accounting! I'm still trying to hire people to help implement my vision of the same in what I think now is the best relay implementation (sorry #[1]): nostream.

#[2] how is the friend-of-a-friend thing going? I might have somebody to work on it. 5 freelancers said no. The 6th said he liked nostr.

After that, I want to require authentication for all connected clients and measure:

* how many requests

* how many bytes sent

* how many bytes received

* how many ms to EOSE consumed (or if DB tells me the complexity of the query ...)

* how long the socket was open,

* how many filters kept in memory watching

* ...

Anti-spam measures will be introduced with the premium tier accounts, their follows, their follows follows, etc.

If somebody wants to copy the full DB twice every minute that's fine with me but then he should pay for it. Currently that would be $5/month? But mainly this is to collect data and put the tools in place to design the right incentives for a scaling infrastructure.

No worries; nostream is awesome!

... and so is nostr-rs-relay. All the implementations have a lot of potential for improvement. If yours fixed the excessive CPU load let me know.

It's getting better.  0.7.16 has significant performance increases, some common astral queries are 7x faster from my benchmarks.

🤙

Does nostream (typescript) have a lower CPU load than nostr-rs-relay? That's surprising

Love your vision

sorry about this. my next todo is use EOSE to be more efficient. need to upgrade to latest nostr-tools.