From: Lee B. <lc...@co...> - 2003-08-13 18:59:40
|
My apologies for the extreme length, but I do want to include what information I have. SquirrelMail v1.4.1 caused so many problems here at Cornell when I upgraded from v1.2.11 that I was forced to downgrade back. The single biggest issue was that SquirrelMail was crippling our backend IMAP server. This server is no slouch (Sun VX880 w/8 processors & 32G RAM) so it was very surprising to everyone here that it did happen. In an effort to try & figure out what was going on I hacked SquirrelMail v1.2.11 & v1.4.1 to write out every IMAP command it issued to a file. One of the biggest issues I saw was that amount of traffic the Filters plugin generated. When I captured the traffic generated on a simple message list refresh without filters from v1.4.1 I saw the following: LOGIN "time005-demo" <snip very long ticket> SELECT "INBOX" EXPUNGE EXAMINE "INBOX" EXAMINE "INBOX" SELECT "INBOX" EXPUNGE EXPUNGE FETCH 1 (FLAGS UID RFC822.SIZE BODY.PEEK[HEADER.FIELDS (Date To Cc From Subject X-Priority Content-Type)]) LSUB "INBOX." "*" LIST "" "INBOX.Drafts" LIST "" "INBOX.Sent" LIST "" "INBOX.Trash" LIST "" "INBOX" LOGOUT But if I have 3 filters and do the same action I see this: LOGIN "time005-demo" <snip long ticket> SELECT "INBOX" EXPUNGE EXAMINE "INBOX" SELECT "INBOX" EXPUNGE SEARCH CHARSET US-ASCII ALL From {3} Lee LIST "" "INBOX.Drafts" SEARCH CHARSET US-ASCII ALL From {3} Dan LIST "" "INBOX.Drafts" SEARCH CHARSET US-ASCII ALL From {3} Jon LIST "" "INBOX.Drafts" EXAMINE "INBOX" SELECT "INBOX" EXPUNGE EXPUNGE FETCH 1 (FLAGS UID RFC822.SIZE BODY.PEEK[HEADER.FIELDS (Date To Cc From Subject X-Priority Content-Type)]) LSUB "INBOX." "*" LIST "" "INBOX.Drafts" LIST "" "INBOX.Sent" LIST "" "INBOX.Trash" LIST "" "INBOX" LOGOUT It may not look like a lot, but multiply that traffic by hundreds of simultaneous users all with potentially more than 3 filters (I have 20 myself) and you can see how an IMAP server can be overloaded by requests. By contrast here's a capture of SquirrelMail 1.2.11 with 3 filters: LOGIN "time004-demo" <snip login ticket> SELECT "INBOX" EXPUNGE EXAMINE "INBOX" SELECT "INBOX" EXPUNGE LIST "" "INBOX.Drafts" LIST "" "INBOX.Drafts" LIST "" "INBOX.Drafts" EXPUNGE EXAMINE "INBOX" EXAMINE "INBOX" EXPUNGE SELECT "INBOX" EXPUNGE A016 FETCH 1 (FLAGS RFC822.SIZE BODY.PEEK[HEADER.FIELDS (Date To From Cc Subject X-Priority Content-Type)]) LSUB "INBOX." "*" LIST "" "INBOX.Drafts" LIST "" "INBOX.Sent" LIST "" "INBOX.Trash" LIST "" "INBOX" LOGOUT Not nearly as bad as v1.4.1 While I admit that I'm an atypical user of SquirrelMail (30,000 user base. Approximately 8,000 active users currently and at times peaking to 300+ simultaneous users) I'm hoping that I can get some help here in trying to reduce the impact of the plugin short of disabling the feature entirely. Are there any suggestions on how to reduce the impact filters have by being so chatty? Maybe exchange or re-write some of the commands issued by the plugin? I'm not very familiar with IMAP commands, but I am learning them very quickly. Thanks for your help. Lee Brink -- "I have always wished that my computer would be as easy to use as my telephone. My wish has come true. I no longer know how to use my telephone." -Bjarne Stroustrup, computer science professor, designer of C++ programming language (1950- ) |