Lyris User's Guide
[previous] [next] [contents]
Why does Lyris List Manager not use Sendmail?
Table of Contents
· Introduction
· Email Commands
· Web Interface for Users
· Server Administrator
· Site Administrator
· List Administrator
· Other Topics
· Add-On Packages
· Installing and Upgrading
· Appendix
· Frequently Asked Questions
· · DocBots
· · Running Lyris List Manager
· · Email
· · · How can I extend Lyris List Manager with my own programs?
· · · How can I be certain my Email Messages were delivered?
· · · What Email Commands does Lyris List Manager support?
· · · Why does Lyris List Manager not use Sendmail?
· · · How do I subscribe people automatically?
· · Lyris List Manager Administration
· · Web Browsers
· · Usenet Newsgroups
· · International
· · Other FAQ issues
· · Mailing List Features
· · Perl/LCP Toolkit
· · Unix Administration

Why does Lyris List Manager not use Sendmail?

> I just talked to our Unix guru who is responsible
> for setting up the networks and configuring Sendmail
> and we wondered why a list manager program relies on
> its own mailer...is there a clever reason to tell
> why you thought Lyris List Manager needs its own

> sending and receiving mail feature - besides the multi-> platform approach argument for NT/Mac/Be...?

Yes, many, many reasons. The major problem with list managers is maintenance. With Lyris List Manager having its own mailer, it knows exactly what the problem is, the instant it occurs. Also, if Lyris List Manager used Sendmail to receive email, it would have to rewrite Sendmail's /etc/aliases file like mad, and that wouldn't be very elegant.

More importantly, Lyris List Manager doesn't do what other list managers do for mail sending efficiency. The other list managers send one message to a list, and use a huge BCC: list to get it out. When someone posts to a mailing list, exactly the same message is sent to every member of the list. The problem with this approach is that when bounces come back, it is very difficult to determine which user bounced it, because every message was the same.

Lyris List Manager makes every message unique, with an X-Lyris-Member-ID and X-Lyris-Member-Name SMTP header. Then, when a bounce comes in, it becomes very easy to tell who did it and to automatically process them.

If you sent every message uniquely with Sendmail, you would get very little mail out, as Sendmail forks (makes a completely new copy of itself in memory) for each message, and so the number of concurrent copies of Sendmail you can run is fairly small. The Lyris List Manager mailer is multithreaded, so it takes up very little memory for each message send and very little CPU time. Lyris List Manager can run several thousand concurrent mail sends, even on a 64mb machine.

We're also seeing very fast message delivery times as a result of the low CPU demands and efficient memory usage.

The decision to leave Sendmail behind was crucial to the design of Lyris List Manager. It will coexist with Sendmail on the same machine. But, it will not use Sendmail for its own mail operations.

If you are running Sendmail or some other mail transfer agent, Lyris List Manager will relocate it to another TCP/IP port, and take over SMTP port 25. Lyris List Manager first receives all incoming mail. If the incoming mail is not addressed to a Lyris List Manager email address, Lyris List Manager automatically passes the email off to the relocated Sendmail program that processes it as normal. With this technique, both Lyris List Manager and Sendmail can coexist on the same machine, and there are no strange configuration tricks to play.

And, of course, having our own mailer means we can easily support many different operating systems, since we don't have to rely on the eccentricities of each platform's different mailing methods.

Other pages which link to this page:
  • Email
  • Page 594 of 629