Seu servidor está ocioso, os sites carregam rápido, mas o Roundcube demora 30 a 60 segundos por clique? Esse padrão geralmente indica gargalo lógico (IMAP, DNS, sessão), não falta de hardware.
1) Sintoma clássico: servidor saudável, webmail lento
Métricas comuns durante o incidente:
load averagebaixo- CPU com alto
idle iowaitpróximo de0.0%
Mesmo assim, o errors.log do Roundcube mostra falhas recorrentes de sessão, login IMAP e chamadas externas.
2) Causas técnicas mais frequentes
A) Banco: Duplicate entry ... for key 'PRIMARY'
Quando há atraso de resposta, o cliente pode reenviar requisição e gerar contenção em inserts de sessão/cache, criando efeito de travamento na UI.
B) IMAP: Empty startup greeting
Se o Dovecot limita conexões por IP e o webmail usa localhost, o teto é atingido rapidamente e conexões novas falham antes do handshake IMAP.
C) Timeouts externos (DNS/API/fontes)
Chamadas para recursos externos (como fontes remotas) podem bloquear renderização quando DNS/rede oscila (VPN, Tailscale, resolver lento).
3) Correção passo a passo
Passo 1: ajuste limites no Dovecot
No arquivo de configuração aplicável:
mail_max_userip_connections = 20
remote 127.0.0.1 {
mail_max_userip_connections = 200
}
Reinicie:
systemctl restart dovecot
Passo 2: force loopback IPv4 no Roundcube
No config.inc.php, evite localhost:
$config['imap_host'] = '127.0.0.1:143';
$config['smtp_host'] = '127.0.0.1:587';
Isso reduz ambiguidades de resolução e evita caminhos IPv6/DNS desnecessários.
Passo 3: reduza dependências externas
Ainda no config.inc.php:
$config['standard_fonts'] = true;
A ideia é evitar que rendering dependa de fetch externo lento.
Passo 4: limpe estado de sessão/cache
Se o banco acumulou erro de duplicidade, limpe tabelas de trabalho:
mysql roundcube_db -e "TRUNCATE TABLE session; TRUNCATE TABLE cache; TRUNCATE TABLE cache_index; TRUNCATE TABLE cache_messages;"
Passo 5: reinicie workers PHP persistentes
Em ambientes LiteSpeed/lsphp, processos antigos podem manter config antiga:
killall -u webapps -9 lsphp
/usr/local/lsws/bin/lswsctrl restart
Lentidão crítica no Roundcube costuma ser efeito combinado de limite IMAP por IP, espera de rede externa e contenção em sessão/cache. Ao concentrar tráfego em 127.0.0.1, ampliar limites locais e limpar estado transitório, a interface volta a responder de forma consistente.
Este post está licenciado sob CC BY-NC.
Comentários
Participe da discussão abaixo.
Comentários ainda não configurados. Adicione as opções do Cusdis em /assets/json/config/blog-comments-config.json.