Re: All this talk about maximum speed

1999-07-14 Thread Sergio Strampelli

Mylo wrote:

 Does anyone have an example Perl code that uses qmail-inject?

  $sendmail_command="/var/qmail/bin/qmail-inject";
  open(SENDMAIL, "|$sendmail_command -f$mailfrom $rcptto");
  print SENDMAIL $s;
  close(SENDMAIL);

$s cointain the mail, with RFC headers if needed.



Re: All this talk about maximum speed

1999-07-14 Thread Mylo

In the case of sending 250,000+ emails, this seems farely ugly in how many
processes it'll be forking.  I guess qmail-inject is designed to be farely
small, but our current process involes writing directly to disk qf and df
files in sendmail.

-- Tim "Mylo" Madams
-- [EMAIL PROTECTED]

Sergio Strampelli wrote:
 Mylo wrote:
 
  Does anyone have an example Perl code that uses qmail-inject?
 
   $sendmail_command="/var/qmail/bin/qmail-inject";
   open(SENDMAIL, "|$sendmail_command -f$mailfrom $rcptto");
   print SENDMAIL $s;
   close(SENDMAIL);
 
 $s cointain the mail, with RFC headers if needed.
 
 



Re: All this talk about maximum speed

1999-07-14 Thread Tommi Virtanen

On Wed, Jul 14, 1999 at 12:53:03PM -0700, Mylo wrote:
   In the case of sending 250,000+ emails, this seems farely ugly in how many
   processes it'll be forking.  I guess qmail-inject is designed to be farely
   small, but our current process involes writing directly to disk qf and df
   files in sendmail.
  
  So call qmail-queue directly.
 I thought they were the same thing.  What's the difference?

You probably didn't understand what I was trying to say.
Inject say a thousand recipients in one qmail-queue
(or inject, or sendmail, if you wish) call. Make sure
you are not injecting them individually, if you can.
That way, the queue system has less work managing them.

The difference between sendmail-clone/qmail-inject/
qmail-queue is just the interface and the number of
execs needed. qmail-queue is closest to the raw
performance your IO subsystem is capable of.
-- 
Havoc Consulting | unix, linux, perl, mail, www, internet, security consulting
+358 50 5486010  | software development, unix administration, training



Re: All this talk about maximum speed

1999-07-14 Thread Mylo

unfortunately each message is customized for each recipient with their account
information, so I can't clone the same message to multiple recipients.  Which,
as I understand it,  would require one qmail-inject (or qmail-queue) per 
recipient.  Which is 250,000+ processes coming outta my perl script.  Although
this machine is dedicated to this task,  that still seems like a nasty thing
to do.  I'm just looking if there is any smooth way of stacking messages into
a single pipe of qmail-inject or anything tricky like that to save the ammount
of processes.  Thanks for your help :)

-- Tim

Tommi Virtanen wrote:
 On Wed, Jul 14, 1999 at 12:53:03PM -0700, Mylo wrote:
In the case of sending 250,000+ emails, this seems farely ugly in how many
processes it'll be forking.  I guess qmail-inject is designed to be farely
small, but our current process involes writing directly to disk qf and df
files in sendmail.
   
   So call qmail-queue directly.
  I thought they were the same thing.  What's the difference?
 
 You probably didn't understand what I was trying to say.
 Inject say a thousand recipients in one qmail-queue
 (or inject, or sendmail, if you wish) call. Make sure
 you are not injecting them individually, if you can.
 That way, the queue system has less work managing them.
 
 The difference between sendmail-clone/qmail-inject/
 qmail-queue is just the interface and the number of
 execs needed. qmail-queue is closest to the raw
 performance your IO subsystem is capable of.
 -- 
 Havoc Consulting | unix, linux, perl, mail, www, internet, security consulting
 +358 50 5486010  | software development, unix administration, training



Re: All this talk about maximum speed

1999-07-14 Thread Tommi Virtanen

On Wed, Jul 14, 1999 at 01:08:20PM -0700, Mylo wrote:
 unfortunately each message is customized for each recipient with their account
 information, so I can't clone the same message to multiple recipients.  Which,
 as I understand it,  would require one qmail-inject (or qmail-queue) per 
 recipient.  Which is 250,000+ processes coming outta my perl script.  Although
 this machine is dedicated to this task,  that still seems like a nasty thing
 to do.  I'm just looking if there is any smooth way of stacking messages into
 a single pipe of qmail-inject or anything tricky like that to save the ammount
 of processes.  Thanks for your help :)

You can always open a pipe to qmail-smtpd, or qmail-qmtpd.
They'll happily eat all the messages from a pipe, but you
can't avoid the exec per queue injection. There just is no
way.

Are you sure the qmail-VERH patches won't solve your problem?
They allow you to embed the recipient address in the
message body without creating multiple queue messages.

-- 
Havoc Consulting | unix, linux, perl, mail, www, internet, security consulting
+358 50 5486010  | software development, unix administration, training