I had noticed on the forums that I wasn't the only person who was having
the CPU maxed out when large attachments were sent.  It doesn't appear, at
least on the forums, that the problem had been solved, so I will open it
up for discussion here, for anybody who could provide some sort of insight
into a solution.  So here is what I found:

It appears that this issue may be related to transfer rate, or at the
least transfer rate affects it.

If someone sends a large attachment from outside of our LAN, which I'll
assume not too many of our clients would be coming in at any more than
current Cable Upstream speeds, the CPU usage will only jump to about 30%
(even though that in itself is still high).  Concurrent attachments will
obviously increase that. I can handle about 3 large attachments
concurrently at this speed before the CPU maxes out.

Now, if someone sends through our LAN, namely via our webmail interface
(SquirrelMail), it only takes one large attachment and the CPU maxes out.
That is because due to the way SquirrelMail works [and i assume other
webmail progs as well], when a user uploads a file through the browser it
uploads it to the web server. Then once the send button is pressed it
sends the file directly from our webserver to our ASSP server, which would
basically transfer as fast as each machine could handle.

I wonder if there is anyway to limit the transfer rate per connection to
see if this is the actual problem.
Merak, my mail server, only lets me limit transfer rate for the entire
SMTP service, not on a per connection basis, so I can't do it at that
stage. Might need to submit a feature request to Merak, but this doesn't
solve any of my problems any time soon.

I wonder if there is a way to do it at the ASSP layer. I guess
theoretically I could setup a SMTP relay between ASSP and Merak that
allows such limiting. I think postfix does this, but I'm not sure. I'd
have to look into it.

To provide some more solid evidence to my belief that it was the transfer
rate causing the problems, I sent a really large message directly from my
machine on our network through the ASSP server, and modified the bandwidth
allocated for Outlook, via a bandwidth limiter program I use, and noted
the changes in CPU usage on our ASSP machine. Here are those numbers:

In all cases this was the only message going through the server at the time.

10kbps - 7% CPU
20kbps - 13% CPU
30kbps - 19% CPU
40kbps - 27% CPU
50kbps - 34% CPU
60kbps - 41% CPU
70kbps - 46% CPU
80kbps - 54% CPU
90kbps - 61% CPU
100kbps - 66% CPU
110kbps - 72% CPU
120kbps - 79% CPU
130kbps - 86% CPU

With no bandwidth limitations (other than the connection itself), it maxed
out at 100% CPU.

Any thoughts on how to fix it now that the problem has been more closely
identified?

Thanks

David S




-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Assp-user mailing list
Assp-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/assp-user

Reply via email to