Ticket #334 (new defect)
optimisation Squirrelmail: imapproxy + server side threading
| Reported by: | denis | Owned by: | anonymous |
|---|---|---|---|
| Priority: | normal | Milestone: | alternc-futur |
| Component: | Webmail | Version: | |
| Severity: | minor | Keywords: | |
| Cc: |
Description
| Source: poivron.org |
Accélérer SquirrelMail?
Le poivron utilise SquirrelMail? pour permettre à ses utilisateurices d'accéder à leurs boites mail via un navigateur web. Voici quelques recettes toutes bêtes pour l'accélérer grandement.
La première recette est ImapProxy?. SquirrelMail? étant écrit en PHP, il lui est impossible de garder la connexion au serveur de mail (IMAP) ouverte entre chaque page. Il est donc obliger, pour chaque clic de l'utilisateurice d'ouvrir une connexion, de faire ces requêtes, puis de fermer la connexion. Cette opération prend du temps, car à chaque fois, il faut vérifier le mot de passe, et tout un tas de chose. ImapProxy? va se contenter de relayer toutes les requêtes au serveur IMAP à une différence prêt : il garde en mémoire les connexions ouvertes quelques temps
Pour l'installer, rien de plus simple, vu qu'il dispose d'un paquet Debian : apt-get install imapproxy
Afin d'éviter les conflits de ports, un petit tour dans /etc/imapproxy.conf pour modifier listen_port à 8143 s'est avéré nécessaire.
Reste ensuite à informer SquirrelMail? qu'il faut utiliser le port en question via la commande /etc/squirrelmail/conf.pl. Menu 2. Server settings, puis A. Update IMAP Settings, puis 5. IMAP Port et y mettre 8143.
La deuxième recette est d'activer la gestion du tri et du threading côté serveur, ce qui sera toujours beaucoup plus rapide que l'implémentation PHP qui se trouve dans SquirrelMail?. Pour cela, il faut d'abord vérifier que le serveur IMAP le gère bien :
$ telnet localhost imap
Trying 127.0.0.1... Connected to localhost. Escape character is ']'.
- OK dovecot ready. 42 capability
- CAPABILITY IMAP4rev1 SORT THREAD=REFERENCES MULTIAPPEND UNSELECT LITERAL+ IDLE CHILDREN LISTEXT LIST-SUBSCRIBED NAMESPACE STARTTLS AUTH=PLAIN 42 OK Capability completed. Si SORT et THREAD= apparaissent dans la réponse, on peut activer, toujours avec /etc/squirrelmail/conf.pl, menu 4. General options, les options 11. Allow server thread sort et 12. Allow server-side sorting.
Ces astuces proviennent de la page SquirrelMailPerformance? du wiki de SquirrelMail?.
