All MUC rooms are stored into memory

Hi There.

We have started working on a XMPP based project a few weeks ago and as a project manager i now have a little concern about openfire being best suited for our project.

We are basicaly using the MUC standard to support some group based communication. Here are bellow my concern and i would appreciate any help on this to so that we can continue building the project on openfire with confidence:

  1. My first concern is: We allow users to create chat rooms at will (we just limit each user to have up to 30 rooms). The problem is that openfire seems to keep into memory all created rooms while it is running and it seems to laod all rooms when it startup.
    This may cause some memory issues as all the rooms created by users will be persistents and thus will stay into memory at the same time.
    We are aiming to have up to 200k users and if we consider that each one will have around 15 rooms we don’t think our server could follow.

So the question is: is there an easy way to make openfire only keep into memory rooms that actualy have at least one occupant without modifying the core of openfire?

  1. We would like all the message posted inside a room to be saved into the database and never cleared. is it possible to configure this?

I have others concerns, but those one are the main ones and i would appreciate any help.