Performance Tuning for Large Mailboxes: Turn Off Message Caching

This article outlines a two-step procedure to prevent the Kolab web client (and associated web- and HTTP-based applications) from loading the SQL database with copies of messages cached, which can potentially incur a significant performance penalty.

This procedure is most prominently applicable to environments where;

  • The IMAP server and SQL database server run on the same system (and use the same disks),
  • The IMAP server uses sufficiently quick (i.e. “small and expensive”) storage to allow messages to be pulled off its disks again and again, as opposed to slow (i.e. “large and cheap and rotating”) storage, and/or is provided enough memory to utilize in-memory buffer caches for message files it has already read from disk.

In /etc/roundcubemail/ change the following setting;

$config['messages_cache'] = null;

This disables the caching of messages, and also impacts caching Kolab Groupware content (such as addressbooks and calendars). Therefore, also adjust or add the following setting in /etc/roundcubemail/

$config['kolab_messages_cache_bypass'] = 2;

This will allow groupware content to continue to be cached (and thus perform the more efficient range queries for Calendar views, for example).

Posted in Guides and tagged , , , , , , , , , , .