|
||||||||||
|
To select the best mailing list server package for the Artemis mailing lists, this document presents the results of an in-depth survey of the three leading freely available mailing list servers: ListProc v6.0c, Majordomo v1.93, and SmartList v3.10. Those three packages were selected from a much larger pool of packages that were described in an excellent review of Listservers, called the Mailing list management software FAQ. The software currently in use for several Artemis mailing lists, MReply, was eliminated early due to it's lack of several basic features needed for the Artemis environment, notably digest and moderated list support and performance. Two other highly-capable packages reviewed in the Mailing list FAQ, CREN's ListProc and ListServ, were ruled out because they are commercial products with fairly hefty annual license fees. Both packages, however, have more features than the freely available software, especially for supporting large or busy lists, so once the Artemis Project has sufficient revenue it may be worth reconsidering those two packages.
The criteria that the listservers are judged on were those features provided by one or more of the packages that are important to the nature of the lists we will be running and the planned Artemis communications infrastructure. Ideas for some of the criteria and some of the data came from the Mailing list FAQ, the rest of the data came from the individual documentation files, FAQs, and web pages for the individual listservers. You can find those files through the links for each package in the previous paragraph. Here are the results of the survey:
Feature | ListProc | Majordomo | SmartList |
---|---|---|---|
Public and Private Lists | Yes | Yes | Yes |
Remote List Administration | Yes | Yes | Limited |
Digest Support | Yes | Yes (using separate list) |
Yes (using separate list) |
Performance with large lists | Good | Poor (supports bulk_mailer) |
Good |
Performance with busy lists | Good | Poor | Average |
Delivery Error Handling | bounce handler loop checks |
bounce handler no loop checks |
smart bounce handler loop checks |
Moderated Lists | Yes | Yes | Yes (supports multiple moderators) |
Root access required for configuration | To set up account and aliases only | To set up account and aliases only | To set up aliases only |
Gateway to Newsgroups | Yes | No (supports newsgate) |
Yes |
Archive Retrieval | Yes | Text files only (supports FTPMail) |
Yes |
Archive Searching | Yes (supports LWGate and ListWebber) |
No (supports LWGate) |
Yes |
Natural language command processing | No | No | Yes |
Support for external tools | MailServ LWGate ListWebber |
bulk_mailer newsgate MailServ LWGate FTPMail |
MailServ LWGate |
As described in the Mailing list FAQ, there are two philosophies behind mailing list software: "big is beautiful" or "small is beautiful". Majordomo is a classic example of the "small is beautiful" type of program, relegating much of it's functionality to external programs. For that reason, at the simplest level Majordomo does not support many of the features listed in the comparison above, but with the addition of a collection of supporting tools, it manages to get close to the other two packages in available features. Assuming the use of Majordomo's companion programs, and if we were to use Majordomo for the Artemis mailing lists, that would be virtually a requirement, all three listservers are very close when comparing the individual features, with a few notable exceptions.
Due to the plans for a large number of mailing lists (there are currently 80+ lists defined in the Listserver Requirements document) and the expected growth of several of the lists to several hundred users (as artemis-list currently has), one of the key criteria for listservers is how well they perform with large and busy lists. An excellent in-depth discussion of how each listserver handles mail queuing and incoming mail can be found in the Mailing list FAQ. I would strongly recommend that anyone who is interested in this area read that part of the FAQ closely. This is the functional area where the three listservers differ the most. Majordomo is designed for handling a few small mailing lists, and apparently suffers from major performance problems with large or busy lists. Some of the performance problems with large lists can be improved with an additional utility called bulk_mailer, but the fact that Majordomo is an interpreted Perl script and requires that Perl be started each time a message arrives is not easily overcome. There are rumors that future versions of Majordomo will significantly improve the performance problems, but until that happens it appears that Majordomo may not be able to handle the requirements of the Artemis mailing lists.
Most of the other differences between the three listservers are minor. One potential problem with SmartList is that although it technically supports remote list administration, a critical feature for the Artemis lists, the commands to maintain a list apparently must be included in the message header, something which many mail clients don't support. SmartList has several advantages, notably a very smart bounce handler, support for multiple moderators, and what the authors of SmartList call "Natural language command processing". SmartList does incur a performance penalty for busy lists, however, as a new copy of SmartList is started each time a mail message is received. Majordomo has no built-in mail loop checks, which could be an issue when the listserver runs unattended for days at a time.
From a simple feature-by-feature comparison, ListProc seems to come out as the best solution, with SmartList a very close second. One potential issue with ListProc is that the current version, 6.0c, is the last freely available version, ListProc will no longer be updated except for bug fixes. Over time, other packages may surpass ListProc's features, although the commercial version of ListProc, CREN's ListProc, seems to be leading the pack for now.
|
|