Alex on Nostr: A big challenge of client performance is that you cannot optimize filters. There are ...
A big challenge of client performance is that you cannot optimize filters. There are a few objective things you can do, but without knowing the relay's query planner you don't know if it's better to make one request or two requests, for example. How you structure the filter could result in completely different performance on different relays. None are perfectly optimized for all shapes of filters. Extending filters to do more things might exacerbate this issue rather than help it. Regardless, this is an inherent limitation with doing JIT querying of relays. You are basically deciding that you prefer the freedom and purity of the protocol over UX. And that's fine.
Published at
2024-10-11 23:47:54Event JSON
{
"id": "4af2af4cf3b0f85e5c129038d6d5a28274f2c3b95da567286bd504ca81a38ca5",
"pubkey": "0461fcbecc4c3374439932d6b8f11269ccdb7cc973ad7a50ae362db135a474dd",
"created_at": 1728690474,
"kind": 1,
"tags": [],
"content": "A big challenge of client performance is that you cannot optimize filters. There are a few objective things you can do, but without knowing the relay's query planner you don't know if it's better to make one request or two requests, for example. How you structure the filter could result in completely different performance on different relays. None are perfectly optimized for all shapes of filters. Extending filters to do more things might exacerbate this issue rather than help it. Regardless, this is an inherent limitation with doing JIT querying of relays. You are basically deciding that you prefer the freedom and purity of the protocol over UX. And that's fine.",
"sig": "d2b48eaa2829e1fb29c71dbf70c9970e4771b99ad3d6745589ae6dafdc8521035a5c25799598c28ed3a9e0181966572d0975805c111c41db76de0ff520187be2"
}