On 8/2/2013 1:04 AM, Grant wrote:
Can anything be done to speed up Roundcube on a Celeron 700 with 512MB RAM (maxed out) running Gentoo Linux? We're using the Chrome browser and the CPU is 95% idle when no one is logged into X. I'm getting reports of 30+ seconds to open an email.
Your problem is likely the amount of RAM; when you start X and Chrome, your client almost surely starts swapping, because there isn't enough RAM for the running processes. Roundcubemail uses AJAX which requires a fast javascript interpreter, and this makes things worse if your processes (including Chrome) are swapping.
On such low-end systems you should use a very lightweight browser instead of Chrome, even if this can give some limitations.
This is simple to check. With all apps running simply run "free -m" and post the output here.
Here's what I get while someone is seated at the system and using Roundcube in Chrome:
# free
Using the "-m" switch displays output in megabytes--easier to read.
total used free shared buffers cached
Mem: 513072 447812 65260 0 16896 209672 -/+ buffers/cache: 221244 291828 Swap: 2097148 0 2097148
This clearly shows the host isn't using swap, has 64MB free, and is using ~200MB for buffer cache. So it seems to have plenty of memory.
JVMs and JAVA are notoriously inefficient, but that should cause a 30s delay just opening a new email. Using HTTPS and JAVA together may be enough to bring a Celery 700 to its knees. Try using straight HTTP instead to eliminate the encryption. This will make a big difference with binary attachments such as photos and the like. With small text only emails it shouldn't cause a big delay.
I'd rather stick with HTTPS if possible.
Of course. I'm simply recommending that you test with HTTP to see if HTTPS is part of your delay issue.
Are there any other good options for speeding things up besides switching browsers and disabling HTTPS?
There may be but we don't have a crystal ball. You're going to have to do some testing and process of elimination to figure out the cause of the problem. Only then can you identify a solution.