Re: [Zope3-dev] ZOPE3 Maildir implementation

2006-04-07 Thread Fred Drake
On 4/7/06, Pjotr Prins <[EMAIL PROTECTED]> wrote:
> If no one else does it and I feel confident enough... Maybe in a few
> months.

I've implemented maildir processors before.  For ZC, no less.  I don't
know what happened to the repository that code was in, but it had all
the current maildir name selection stuff going on.

I'd be happy to take a look at it before too long if the issue lands
in the collector.


  -Fred

--
Fred L. Drake, Jr.
"Don't let schooling interfere with your education." -- Mark Twain
___
Zope3-dev mailing list
Zope3-dev@zope.org
Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com



Re: [Zope3-dev] ZOPE3 Maildir implementation

2006-04-07 Thread Pjotr Prins
Marius just told me he chose a file system solution because the
utility is not aware of ZODB, may not want to have ZODB and would
survive crashes. Good points, really.

On Fri, Apr 07, 2006 at 10:53:00AM -0400, Gary Poster wrote:
> Typically you have this kind of design because Zope only has a  
> limited number if threads (usu. 4) that you don't want to tie up  
> waiting for network traffic.  So the intent is to not block.

If the queue was stored in ZODB it could still be handled on a
seperate thread. So I don't think it really is a blocking issue.

> >2. The current implementation can only handle between 30-60 E-mail's a
> >minute. This is mostly due to the naming convention used for maildir
> >files (one a second - actually the Maildir naming allows in between
> >numbers, but you don't use that).
> 
> Ow.  I wish you would fix that, or at least put in a collector issue  
> with some good hints.

Will do.

> >30 E-mails a minute is not really
> >scalable and has the (apparent) downside it (effectively) blocks the
> >Zope webserver for the duration (it should not, but it does, possibly
> >a locked ZODB?).
> 
> Possibly because it's waiting for an available filename given its  
> naming conventions.

Yes. And that is probably where the blocking occurs. The fix with
in-between numbers should be straightforward.

> >We have that experience sending out bulk E-mail reminders using that
> >module. Sending out 200 mails made the main ZOPE server inaccessible
> >for 3-4 minutes.
> >
> >The reason I am asking is not so much an interest in fixing it for
> >mail
> 
> I wish you would.

If no one else does it and I feel confident enough... Maybe in a few
months.

It would nice if a utility, on a seperate thread, could find the ZODB.
Maybe that can happen through ZCML configuration? I would need
something like that. In our case I can assume the ZODB is there since
we use the ZOPE3 webserver.

Pj.
___
Zope3-dev mailing list
Zope3-dev@zope.org
Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com



Re: [Zope3-dev] ZOPE3 Maildir implementation

2006-04-07 Thread Gary Poster


On Apr 7, 2006, at 10:37 AM, Pjotr Prins wrote:


I have a few questions regarding the ZOPE mailer implementation:


I didn't write it.  I have some pretty good guesses, though.   
Hopefully the author can confirm.



1. Why did you go for a file system implementation - as ZODB objects
are being made into a mail queue anyway? The Maildir step could have
been skipped, I suppose, just the connection to a mail server directly
over the network interface would suffice. Is there a specific reason
for the Maildir implementation?


Typically you have this kind of design because Zope only has a  
limited number if threads (usu. 4) that you don't want to tie up  
waiting for network traffic.  So the intent is to not block.



2. The current implementation can only handle between 30-60 E-mail's a
minute. This is mostly due to the naming convention used for maildir
files (one a second - actually the Maildir naming allows in between
numbers, but you don't use that).


Ow.  I wish you would fix that, or at least put in a collector issue  
with some good hints.



30 E-mails a minute is not really
scalable and has the (apparent) downside it (effectively) blocks the
Zope webserver for the duration (it should not, but it does, possibly
a locked ZODB?).


Possibly because it's waiting for an available filename given its  
naming conventions.



We have that experience sending out bulk E-mail reminders using that
module. Sending out 200 mails made the main ZOPE server inaccessible
for 3-4 minutes.

The reason I am asking is not so much an interest in fixing it for
mail


I wish you would.


, as we can live with that performance issue, but I am looking to
implement a similar functionality for storing xParrot/ZOPE objects in
version control in a seperate thread. So I would like to understand
the reason behind the Maildir choice.


"Don't block."

:-)
___
Zope3-dev mailing list
Zope3-dev@zope.org
Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com