Running:
./start.sh
You can also try:
./scale.sh
Which runs multiple processes of python and zerogw, to show how it could be scaled. But you need to turn sockets into tcp ones to scale it to multiple machines, and also fix redis config which is awfully slow for testing purposes.
There is also:
./single_socket.sh
Which is merely same as scale.sh
, but running multiple zerogw instances on single port.
You can also find this chat online at http://tabbedchat.zerogw.com
user:<id>:name
-- user's nameuser:<id>:password
-- user's password hashuser:<id>:mood
-- user's status stringuser:<id>:rooms
-- currently joined rooms for this useruser:<id>:bookmarks
-- rooms for last session, to recover on loginuser:<id>:conn
-- user's current connection idsession:<sid>
-- id of user with specified session (until expires)nicknames
-- hash of nickname to user idnext:user_id
-- next user id counterconn:<cid>
-- mapping of connection id to useridconnections
-- sorted set of connections to timestamps of last syncsess:<sessid>
-- mapping of session id to useridroom:<id>:name
-- name of the roomroom:<id>:topic
-- topic of the roomroom:<id>:users
-- redis set of user id's of participantsroom:<id>:moderators
-- redis set of user id's of moderatorsroom:<id>:history
-- redis list of room's history (last 100 messages)rooms
-- hash of room names to room idsnext:room_id
-- next user id counter