I am looking at developing a simple application that would allow users interested in the same topic to chat with each other (similar to chat rooms]. The problem is the user base can grow very large (think 40-50K per topic).
Based on some basic tests and documentation:
-MUC wouldn't work as it can't hold that many users.
-Shared Roster Groups are an option but they have the same problem as MUC [Everytime a new users joins in he/she will receive presence of all the existing users. I want to be able to control this as I can't show 50K users at one time in any client.]
-Pubsub is an option that I am exploring now, as seems to scale well. fetching user information in chunks rather as a a whole might still be a problem.
Has anyone developed something similar where the container element - either a MUC room, or a Group, or anything else- holds many users at the same time and does presence management efficiently?
Hmm, there is a bot called
Hmm, there is a bot called snapi that can post in pubsub I think. Sorry if it's off topic.
Pubsub is indeed the best
Pubsub is indeed the best approach for this.
You may need to write plugins to optimize for your use case, but I would only do that if you hit performance issue.
So, you should give it a try and see how it goes.