The architectures are not the same. In XMPP, the server is the source of truth. It receives all stuff from the outside and arranges it in its database. You ask it "what's the status" and it can give you the snapshot you desire. Think favorite-search-engine that scrapes everything in the background and gives you instant answer to your queries.
In Matrix, it's a stream of events. So you technically have to fetch all events and then reconstruct the current state locally. Think scraping the web manually before searching locally.
There are, of course, ways to make it faster, but ultimately the fundamental difference means it will always be an upstream battle to make it as efficient, and the risk will always be to depend more on the server
In Matrix, it's a stream of events. So you technically have to fetch all events and then reconstruct the current state locally. Think scraping the web manually before searching locally.
There are, of course, ways to make it faster, but ultimately the fundamental difference means it will always be an upstream battle to make it as efficient, and the risk will always be to depend more on the server