Avatar
Rif'at Ahdi R
2b67e480b7f99d2835684a8f7276d86edbe8e318ea55cf77ccfd559c5f24f645
Special family-friendly relay with filter settings (Language, Safe For Work, Hate speech, Sentiment, Topic, etc) for Global Feed: https://github.com/atrifat/nostr-filter-relay/blob/main/USAGE.md wss://nfrelay.app Indonesian. Learning and interested in PHP, JS, Go, DevOps, Android, and Machine Learning

Yes, thank you Mazin for all your suggestions. I really need to add that later as backlog. The last time i have checked the relay has peak of 1500+ connections, while normally around 20-30 alive connections. Thankfully it seems only affect a little bit with relay performance πŸ˜…

Ah, good to know, thank you. Well i think it is fine for now as the relay won't likely hit the limit

The last question might be related how you handle malicious bot traffic that open multiple websocket connection. Does the value below can help mitigate that a bit?

#Websocket-level PING message frequency (should be less than any reverse proxy idle timeouts) (restart required)

autoPingSeconds = 55

#If TCP keep-alive should be enabled (detect dropped connections to upstream reverse proxy)

enableTcpKeepalive = true

It's ok Mazin, thank you for your suggestions. πŸ™‚

I see. Yes, i have increased maxreaders as experiment since the relay focused as read-only relay. So not sure whether it will impact overall performance.

Oh, is it ok to leave noReadAhead same as default? I think in my case it will be ok because i have set regular cleanup data script (max 7 days retention). Also, huggingface can also occasionally restart the vm on their own so it get flushed easily before hitting memory limit πŸ˜…

Yes, it is truly limited. Unfortunately.

It's invisible, only the owner can see the latest tech of his laptop πŸ˜„

Well, i see, so it is very limited. I think i need to adjust code in my relay proxy after all πŸ˜…

Did you publish the code in public? Or is it only private use?

Oh, do you think it is already ok Semi?

I have little bit problem handling bots connection, so i set TcpKeepAlive checking true in strfry.conf . What is your experience to handle that? Assuming we can only tweak strfry.conf πŸ˜…

nostr:npub18kzz4lkdtc5n729kvfunxuz287uvu9f64ywhjz43ra482t2y5sks0mx5sz nostr:npub1nlk894teh248w2heuu0x8z6jjg2hyxkwdc8cxgrjtm9lnamlskcsghjm9c nostr:npub10npj3gydmv40m70ehemmal6vsdyfl7tewgvz043g54p0x23y0s8qzztl5h

If you don't mind, i need some opinions/suggestions from you as experienced relay operators. Currently, i'm running custom relay, nostr-id-relay.hf.space using this following strfry.conf configuration:

https://huggingface.co/spaces/nostr-id/relay/blob/main/strfry.conf

The relay hosted in limited PaaS thus i can't modify any related system tweak such as sysctl.conf, kernel tuning, etc. I can only adjust at application level (strfry configuration and nostr-filter logic code).

What do i need to improve based on strfry.conf configuration above?

Thank you.

Btw, this is overall relay architecture flow:

Our life as kid might be happier if we can get such a nice toy. Better capability to fly than our paper-made plane πŸ˜„

Not by defaults. But you can probably try using:

wss://nostr-id-relay.hf.space/?lang=en&lang_confidence=50

to filter your specific timeline (i.e. Global Feed relay). This is custom relay which has filtering features.

Not sure if this fully solve your needs. I think you can achieve that with LND + Nostdress (non custodial lightning address server)

This minibolt tutorial can be the start:

https://v2.minibolt.info/lightning/lightning

After that followed by installing nostdress:

https://github.com/believethehype/nostdress

cc nostr:npub1nxa4tywfz9nqp7z9zp7nr7d4nchhclsf58lcqt5y782rmf2hefjquaa6q8

Thank you. It has been added to nostr-id-relay.hf.space as one of source aggregating relays πŸ™‚