Greg Cope
Tue, 19 Jun 2001 03:00:56 -0700
Dear All Sorry to drag the tone back down to perl, but, I've a question that is ripe for the lists collective expertise. I want to design a mailer for sending large numbers of individual messages to a large list. This is for a client whom manages companies customers CRM lists. This is more of a prototype / proof of concept, and as such I thought perl would be the best. We are already using qmail, but the expense of queuing a message mean that performance is limited by disc speed and qmail-send the program that manages the queue and sending outbound emails. Hence I want to write is a thing that: a) Looks up and caches MX records in a shared area (shared mem) - easy. b) Load the message template into shared mem - easy. c) Gets message from shared mem, and given a list uses qmail-remote to actual do the smtp conversation (by reading info on different filehandles), if the initial send fails drop back to an smtp relay that will queue the message or bounce it somewhere else. Could this done even quicker with a perl client that does simple checks ? d) Log to a central file - success for failure. I just know there must be a way to do this in perl that is quick (rather than writing it in C). So whats the way the write this so that its execution speed is the fastest (given enougth memory and network bandwidth). Part C is the sticker, i.e. the quickest way to spawn and control alot of other process that communicate over filehandles. Clues on a postcard, ta. Greg <normal vaguely perl service can be resumed>