I/O token scheduling?

My other half has a habit of never filing her emails, so everything goes in the inbox and never gets cleared out. Squirrelmail/IMAP, in its infinite wisdom, seems to really thrash my I/O tokens, so I end up getting timeouts on my site (and MY email, which is well-managed).

Any ideas how I can keep the number of I/O tokens taken by IMAP down to a reasonable level? (That is, apart from hitting the other half with a clue stick 8)

4 Replies

I put in a request some time ago for an "ionice" type feature, and it seemed that it had been planned for the kernel. I'm not sure where that's at, but it would probably help your situation. You might also consider modifying the mail client code to scan "/proc/io_tokens" and throttle itself.

http://www.linode.com/forums/viewtopic.php?t=1147

What IMAP server are you using?

Are you sure its accessing the mailbox thats using up IO tokens, and not swap thrashing?

I use squirrelmail/courier imap and don't notice problems even accessing large mailboxes (opening a folder with 1000 messages brings me down ~2000 io tokens). People on these forums have reported even better performance with the dovecot IMAP server.

Any hacks that limit the IO usage are going to slow your webmail down a lot, as well as any other services your box runs, so I don't recommend that really.

I should add that its not just your IMAP server that's to blame: squirrelmail isn't the best choice if you are low on resources - it makes loads and loads of connections to your IMAP server, which will cause all sorts of problems with the UW IMAP server.

At work we use prayer which uses persistent connections to the IMAP server, which should also help lower your IO usage if you are using UW-IMAP as I suspect.

You'll neeed to build it yourself though…

http://www-uxsup.csx.cam.ac.uk/~dpc22/prayer/

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct