y-matsui::weblog

電子楽器、音楽、コンピュータ、プログラミング、雑感。面倒くさいオヤジの独り言

高速なメールサーバーの話:qmail

またまた調子に乗って、コンピュータシステムネタ。
最近注目しているメールサーバーソフトにqmailというのがある。
インターネットメールサーバーの世界では、sendmailがとにかく有名だし、無難な選択。自分もずっとsendmailが唯一で堅牢なメールサーバーと信じて疑わなかった。(sendmail歴8年!)
しかしsendmailは歴史が古く、セキュリティ対策や機能追加でつぎはぎになっており、メンテナンスもチューニングも職人技(らしい)。そこで、新しいMTA(メール転送エージェント)を作ろう!ってんでpostfixqmailっていう打倒sendmail勢力が出てきている。
歴史的能書きはこれくらいにして、自分がqmailに注目した理由が3点ある。
1:同じハードウェアスペックでも、sendmailと比較してより大規模なメーリングリストに対応できる(標準)
2:全送受信メールを保存することができる(コンパイル時に指定)
3:バーチャルサイトに対応している(追加機能)

qmailの日本語リソースとして有名なここに簡潔に述べられているように、「qmailは懐かしのpentiumマシン程度のPCを使った場合でも、1日20万通のローカル配信ができる」と書かれている。自分の経験上、sendmailのWAN向けSMTP配信は0.5秒/通の性能だと認識しているから、24時間ぶっ続けでメール配信をしたら多分40000通程度が限界だ。これはK6の450MHzのLinuxマシンのスペックなのだが、qmailならもっともっといけるだろう。
内部的にはデフォルトで20の並列タスクとして動作する。というのも心強い。
メールボックスの形式もsendmailみたいにひとつのファイルではなく、アカウントごとのディレクトリの中に、それぞれ配信用、受信用、保存用のディレクトリがあり、メールは1通1ファイルの形式なので、sendmailみたいに受信したメールデータがでかすぎて壊れたり、ロックされたりという危険が非常に少ない。

つまり、qmailは高速に送信でき、大量に受信できるメールサーバー。
送受信される全メールを1つのアカウントで受信して、ログとして使っても壊れない。
これは素晴らしい!。どのような用途に使おうとして、「素晴らしい」と思っているのかは別の記事で暴露します。