[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Zmailer's memory usage with large number of recipients..



You have heard my statement that running  $MAILVAR/lists/LISTNAME
expansion does cause serious memory-heavy operations to occur.

I have now tried an alternative which is a lot more light-weight
and uses a lot less memory...

I will propably start to use it on  "lists.funet.fi",  but it is
so much specific to my mailserver it might not work for you all.
(It assumes strict format from the address list in the file, so
 strict that a manually kept list will usually fail..)


Theory of ops:
	"| .../listexpand owner-address /file/containing/addresses"

this behaves somewhat analogous to:
	"|/usr/lib/sendmail -fowner-address `cat /file/containing/addresses|cut -d'\t' -f1`"
(except you can't write such line on Zmailer -- I think you can't..)

It does read the addresses from the file, and submits the piped
in email body back to the processing.


Same list of recipients (650 of them):

	"internal expansion"  33   MB
	"external expansion"   3.5 MB


Yes, we are not dreaming  :-(
Internal expansion via  $MAILVAR/lists/LISTNAME  IS a memory pig..

With this there is real hope for running the Zmailer on small machines,
like Linuxes..

Propably I will create a  $MAILVAR/biglists/LISTNAME  to automatically
call the  listexpand  program -- and before next release that  listexpand
will get a  Makefile  of its own making it installable without being
a Zmailer guru.  ...  Oh, and maybe to generalize its address reader
so that it will be forgiving on the contents of the file.

If you want that small program now, instead of next release, ask me.

	/Matti Aarnio	<mea@nic.funet.fi> <mea@utu.fi>