On 12/13/05, Ed Howland <[EMAIL PROTECTED]> wrote: > David Dooling wrote: > >The mailutil utility distributed with pine can convert mbox to mbx. > > But since I am using imapd from UWash, do you think I should go with > MAILDIR or mbx? I might later replace UW with Cyrus, Courier or > whatever. Mainly, I am looking for a grand performance boost.
I would guess mailutil is part of the uw-imapd distribution too. As for maildir, I don't think uw-imapd supports it (I could be wrong). But if speed is your concern, mbx might be better anyway. Going from mbox to maildir is going from a single large file to lots of small files. mbx is indexed, so only one file needs to be opened and it can seek quickly to each message. Ultimately, though, I think your problem is uw-imapd. Since it does not support a daemon mode (it is written to only get started by inetd), coupling it with SquirrelMail, which does not support persistant connections, is a bad idea. I know, we did it. The problem is that every time you do anything in SquirrelMail, a new connection to the IMAP server is established. With uw-imapd, this means inetd gets a connection, does its work, then spawns uw-imapd, which then has to open the mailbox (whatever format), read it, and report back. This has to be done for every click. Now, if you have a good bit of RAM on the server, you benefit from caching of the uw-imapd and mailboxes in memory that the OS does, but if you have a significant number of users with large mailboxes, it only goes so far (and doesn't really solve the problem anyway). One other problem is that mbox format can caused significant fragmentation on ext3 filesystems. Fortunately, there are several things you can do to improve the performance. 1. Convert from mbox to mbx 2. Use a persistant client, e.g., Mozilla Thunderbird 3. Use SquirrelMail with an imap proxy daemon (http://www.imapproxy.org/) 4. Use an imap _daemon_ If you end up doing #4, I would recommend Cyrus. The problem with it is that is uses its own storage format. The benefit is that it uses its own storage format. It's storage format allows mailboxes to contain messages and other mailboxes, each message is in its own file, and each mailbox maintains its messages' headers and state in a couple database files (something like BerkeleyDB, but specific to Cyrus). That last item really speeds up index displays, sorting, and searching. dd -- David Dooling _______________________________________________ CWE-LUG mailing list [email protected] http://www.cwelug.org/ http://www.cwelug.org/archives/ http://www.cwelug.org/mailinglist/
