Front page | perl.beginners |
Postings from February 2012
Re: Sending files efficiently with Net::SMTP
Thread Previous
|
Thread Next
From:
Igor Dovgiy
Date:
February 23, 2012 09:02
Subject:
Re: Sending files efficiently with Net::SMTP
Message ID:
CADGQiHH52qR+V8_wHkYWExD8u0O0+sj0mLv-7UDyw=hHv-K_bw@mail.gmail.com
From the documentation (http://perldoc.perl.org/Net/SMTP.html)
...
data ( [ DATA ] ) - initiate the sending of the data from the current
message. DATA may be a reference to a list or a list. If specified the
contents of DATA and a termination string ".\r\n"is sent to the server. And
the result will be true if the data was accepted.
...
So maybe this'll speed it up a bit? Should go right after
$smtp->to($recipient):
...
open my $msg_fh, '<', $outfile
or die $!, "\n";
my @msg_content = <$msg_fh>;
close $msg_fh;
push @msg_content, "\r\n";
$smtp->data(\@msg_content)
or die 'Sending failed', "\n";
...
-- iD
2012/2/23 mailing lists <listas.correo@yahoo.es>
> Hello all,
>
>
> I have a perl (Ver. 5.10.0) program running over an old machine which send
> messages with this code:
>
>
> my $smtp = Net::SMTP->new($dstMailServer, Timeout=>10, Debug=>0,);
> unless(defined($smtp)){
> syslog LOG_INFO, "id:%s error: unable to connect with %s", $myid,
> $dstMailServer;
> exit $EX_TEMPFAIL;
> }
> $smtp->mail($sender);
> $smtp->to($recipient);
> $smtp->data();
> my $line;
> open INPUTFILE, "<", $outfile or die "couldn't open $outfile";
> while(defined($line=<INPUTFILE>)){
> $smtp->datasend($line);
> }
> close INPUTFILE;
> $smtp->dataend();
> $smtp->quit;
>
>
> since the machine belongs to a third party I have no possibility to
> install perl modules (no internet connection, compilers, etc) like Slurp.
> So sending files in the MB range is very slow. Anyone know how to optimize
> (if possible) this code?
>
> --
> To unsubscribe, e-mail: beginners-unsubscribe@perl.org
> For additional commands, e-mail: beginners-help@perl.org
> http://learn.perl.org/
>
>
>
Thread Previous
|
Thread Next