We are using Openfire 3.6.4 with a PostgreSQL database located on the same machine. We have a roster of approximately 1500 users (eventually increasing to 3000) in roughly 150 groups. We are using JWChat as a client.
Are users are complaining of very slow login times the first time they login. Generally it takes approximately 2 minutes to display the roster in JWChat. Debugging this it appears that 1 minute 30 seconds of this is the time it takes for the roster to be returned from Openfire after the roster request from the client. In subsequent logins the roster return time is only a few seconds- I assume that this is due to caching within Openfire.
Can anyone offer any suggestions as to why the initial request for the roster is taking so long and how it could be improved? Reading some other posts I can see that many people use far bigger user bases (tens of thousands) than we are so I assume that a roster of a few thousand users is reasonable.