On 18-Jan-08, at 12:52 PM, Guy Hulbert wrote:

On Fri, 2008-01-18 at 12:19 -0500, Matt Sergeant wrote:
What kinds of things do plugins need to avoid in an asynchronous
world?

Blocking. :-)

Could you elaborate a little on this or provide a reference (link not
biblio).

Sure. Basically I mean network access (file access too, but it has MUCH less of an effect on things). So your typical examples in qpsmtpd would be DNS lookups (mostly already taken care of in core), callouts to spamd, or SMTP calls to queue/smtp-forward.

I *do* intend to write async versions of those plugins at some point, it's just getting around to it.

It's also worth noting that they work just fine already - it's just that they will block and thus not give as good performance as they possibly could, which will be relevant on high traffic sites.

Matt.

Reply via email to