还有一个想法,也许每个用户都应该只用一个 relay, 挂了就再换一个 relay,同时更新一次 10002 kind 的 event。这样对客户端会比较友好,同时仔细想想,其实好像也不比多用几个 relay 来得差——首先你更明确的知道你的数据在哪个 relay 上,同时 nostr 的应用一般都是 local-first 的,本地也有一个备份。相反,如果用很多 relay,其实反而让客户端和用户都很困惑:我的数据到底存在哪个 relay?于是很多客户端要做很多工作去猜,用户体验也变复杂。

Reply to this note

Please Login to reply.

Discussion

其实一个和三四个区别不是很大,超过这个数的话,大部分客户端是不拿来参考的。Jumble 只会使用用户设置的前 2 ~ 4 个 relay。并且如果用户设置超过 8 个 relay,会直接认为这个人不懂 outbox,从而不使用他设置的 relay,默认使用几个大 relay。

现在 outbox model 还有一个很大的问题,用户在更换 relay 时并不会将旧 relay 的数据全部同步到新 relay 上,这会造成找不到他以前的事件

是的,这个其实也是缺少migration的方案,协议没有规定,导致比较混乱。很多relay应该也不接受一下子导入几万个历史event,会被rate limit吧

是的,还有蛮多问题