Kopano is a great, swift and flexible groupware. However starting with default settings, the system may behave slow in some setups. First of all, some background about data processing, storing and about Kopano’s internals regarding data storage to better understand, how all of this ties together.

The kopano-server binary is writing data to DB as well as attachments to local disk and is reading user informations from active-directory, LDAP or local storage. So the obvious is, that if you have slow storage, you get slow performance. If latency is high to DB/LDAP/AD, you get slow performance.

But even if you have fast storage (SSD/NVME), there might be bottlenecks due to the default settings.

If you have tuned your mysql-Database according to Kopano’s tuning guide (Kopano_Mysql_OpenLDAP_Tuning_Recommendations.pdf) you may still have bad performance as the recommendations do not fit your setup very well.

Here is a real-life example:

The kopano-server itself, is caching data that is frequently requested by users. If the cache is full or too small, kopano-server has to make all the time requests to the database. So even if you tune your SQL-database, a lot of roundtrip time is generated, if the cache-settings for kopano-server are too small.

Try to get statistics from kopano-cache:

Kopano Cache Statistics
Server start time: ‚Mo Feb 20 21:32:43 2023‘
Current time : Tue Mar 7 13:39:03 2023

 Cache                Hit ratio                  Mem usage ratio
   obj (    15821656/    15841892) (99%)   (     1888216/    16777216) (11%)
 store (     7327115/     7331171) (99%)   (      110936/     1048576) (10%)
server (           0/           0) (N/A)   (          48/     1048576) ( 0%)
abinfo (      654707/      654718) (99%)   (       15699/    26214400) ( 0%)
userid (     1039381/     1039393) (99%)   (        1695/    26214400) ( 0%)
   acl (       62609/       62610) (99%)   (         112/     1048576) ( 0%)
extern (      157192/      192946) (81%)   (        1035/    26214400) ( 0%)
uquota (           0/           0) (N/A)   (          56/     1048576) ( 0%)
index2 (     5505154/     5577189) (98%)   (      711190/    33554432) ( 2%)
 quota (      134944/      211633) (63%)   (         248/     1048576) ( 0%)
index1 (     1924629/     4285457) (44%)   (      711198/    33554432) ( 2%)
  cell (    43796594/    44216082) (99%)   (    27875990/  4106184704) ( 0%)



Keep an eye on the mem usage ratio. These settings should not be more than 95%. If above, the reserved memory for this kind of cache (obj, store, server, abinfo…) is too small.

These are tunable: See

grep cache_ /etc/kopano/server.cfg

cache_cell_size = 256M

cache_object_size = 16M

cache_indexedobject_size = 32M

cache_quota_size = 1M

cache_quota_lifetime = 1

cache_acl_size = 1M

cache_store_size = 1M

cache_user_size = 1M

cache_userdetails_size = 25M

cache_userdetails_lifetime = 0

cache_server_size = 1M

cache_server_lifetime = 30

There are many more tunables. If you have a slow kopano-server, feel free to book a tuning session with us.

Categories: Blog