Skip to content


2.1.x #33

wants to merge 7 commits into from

2 participants


Redis support for roster:

  • Basicly, the main files modified were:

    • configure /
    • eredis directory was added to src directory (to do easier the redis integration)
    • ejabberd_redis (to handle calls to redis)
    • mod_roster.erl (obviously )
  • The config file could add the next string:

    {redis_server, {"localhost", 6379, 0, ""}}.

    The params means:

    • host
    • port
    • database
    • password

    The mod_roster module should use "db_type" to change from mnesia to redis database:
    {mod_roster, [{db_type, redis}]},

  • To install the solution, the commands sequence should be:

    ./configure --prefix=/usr/local --enable-eredis
    make install

  • Redis is used as schema throught keys, therefore we use this key to access to roster list (or set):

    And this key to access to individual register and field:

    The params means:

    • user: the user owner of roster.
    • server: domain for the user owner of roster.
    • roster: as itself.
    • jid: the contact in roster.
    • field: a individual data for the contact in roster.

That's all, tough.


ProcessOne - XMPP, Erlang, jabber member

closing as 2.1 is discontinued

@cromain cromain closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on Jun 21, 2012
Commits on Jun 22, 2012
  1. little changes, it's not functional but ongoing!

    Manuel Rubio committed
Commits on Jun 25, 2012
  1. Redis roster support completed.

    Manuel Rubio committed
Commits on Aug 22, 2012
  1. connections pool added.

    Manuel Rubio committed
Commits on Aug 23, 2012
  1. roster_utils for mnesia2redis utility added.

    Manuel Rubio committed
Commits on Aug 27, 2012
  1. failover and start & stop procedured added.

    Manuel Rubio committed
Something went wrong with that request. Please try again.