Hello,

I have a very different application around imap which works in following
way :

1. There is a single imap account.
2. The Uploader application uploads mail to this account using imap append
command. Many mail are uploaded simultaneously. The uploader stores mail
details in database including messageid.
3. Webmail application provides a webmail like functionality to view mail
from this account. Many users access it simultaneously. The application
performs a search on messageid to get mail. It does not show a typical
Inbox like view.
4. The maildir is stored on NAS.

Now the problem :
Initially the application worked well. As the data started to grow it
slowed down considerably. Typical symptoms were timeout in webapp while
retrieving mail and high iowait in top. At that time the maildir had about
25k mail and its size was about 60gb. We thought that searching using
messageid in the entire maildir was the cause, so we reduced the search set
by asking imap to search only in the mail of particular day when mail was
uploaded. This date was present in database. This extended the life of the
app by about 3 months. But again as the data grew, similar symptoms were
found( iowait = 40 ). This time the maildir contained about 90k mail and
size of maildir was about 300gb.

I know the design is crazy, but I need to get it working - keeping the
elements same.

My reasoning about the problem is like this :
Since the application worked well initially, the only thing which is
changing is the growing number of files in the maildir. So if I store the
mail in different physical folders in small quantities the problem should
get solved. Also I have a normal mail server where users have mails to the
tune of 90k in their maildir but they dont face problems.

However this time I need to be certain that it is not something else. So
the key question is whether concurrency alone could kill the application
even if mail folders are small ? ( I'm still checking whether the number of
users accessing the system has increased - from the time when the app was
working well)

Assuming that there will be about 50 mail being uploaded simultaneously and
600 users accesing the same account at the same time - are there any
locking issues in courier imap which will come into picture ?

Will there be a problem if say 100 users out of 600 are accessing same mail
?

Thanks and Regards,
Amol
------------------------------------------------------------------------------
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
_______________________________________________
Courier-imap mailing list
Courier-imap@lists.sourceforge.net
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-imap

Reply via email to