I’m looking into hosting one of these for the first time. From my limited research, XMPP seems to win in every way, which makes me think I must be missing something. Matrix is almost always mentioned as the de-facto standard, but I rarely saw arguments why it is better than XMPP?

Xmpp seems way easier to host, requiring less resources, has many more options for clients, and is simpler and thus easier to manage and reason about when something goes wrong.

So what’s the deal?

  • @kevincox
    link
    English
    7
    edit-2
    28 days ago

    My Synapse install is using 94MiB of RAM and 500MiB of database disk space. CPU usage is effectively zero. I only have a 3 active users but decades of conversation history for myself (imported from other services). An uncompressed pg_dump of the data is about 250MiB which is within an order of magnitude of the raw text that I have in it. Nearly all of the conversations are encrypted so it wouldn’t compress much.

    Given that just running python takes 13MB of RAM it probably isn’t using many resources past loading the code. At least at small scale running a Matrix server is not a notable resource burden for most people. A Matrix server written in a more efficient language (like Conduit) would likely be fairly similar to an XMPP server written in the same language. Either way unless you are hosting thousands of users it doesn’t seem like this is a major problem for either protocol.

    • poVoq
      link
      fedilink
      English
      528 days ago

      It should be noted here that Synapse resource use is highly dependent on the specific usage and can easily blow up if even a single user is joining a lot of large popular rooms on the Matrix network. XMPP has no such issue and scales pretty linear with user number.