配信からバウンス解析、データの利用までの流れ
下記の図は、既存のネットワークにbounceHammerを組み込んだ際に、メール配信→バウンスの発生→バウンスメールの解析→解析済みデータの蓄積→データの利用の流れを示したものです。解析済みデータをYAML/JSONパーサで読込む事でWebサイトや配信システムと連動できます。
bounceHammerをインストールしたからと言って上記の図のように全ての機能を使う必要はありません。例えば管理画面もHTTP-APIも使う必要がない場合は、インストール時にWeb関連モジュールを入れずに済みますしWebサーバも起動しなくて済みます。
機能(コマンド)を中心とした処理の流れ
下記は、メールが配信され、それがバウンス(エラーで返ってくる)して、bounceHammerがそれらを解析(mailboxparser)し、ログに記録(logger)し、データベースに蓄積(databasectl)し、そしてそのデータ化された内容を取り出す(管理画面/WebUI, datadumper)という流れを、コマンド中心に図解したものです。
最初の図と同じく、全ての機能・コマンドを使わなくてはならないという事はありません。例えば解析をする、その実行結果のYAML(JSON)だけあればあとは要らないという場合は、databasectl, tablectl, datadumper コマンドは不要ですし、データベースサーバを設置する必要もありません。
bounceHammerを既存のネットワークに組み込む構成例
下記の図は、bouncehammerを既存のネットワークや配信システムに組み込む形で設置した場合の構成例を示すネットワーク図です。

上記の図ではデータベースは同じネットワーク内の別ホストになっていますが、接続さえできれば遠くの別ネットワークにあるデータベースでもかまいませんし、bounceHammerをインストールしたホストと同居してもかまいません。
上記の図における勘所は、次の二点です。
- bounceHammerを設置したホストに何らかの手段(図ではscp,fetchmail)でバウンスメールを送る
- bounceHammerを設置したホストから解析済みデータ(YAML,JSON)を利用したいホストに送る
bounceHammerはバウンスメールさえあればよいので、図のようにバッチ処理でscpを使う以外にftp, rsync, smtpなどで転送してもよいですし、fetchmailやhttpで取りに行ってもよいでしょう。bounceHammerが解析した結果のYAML,JSONあるいはCSVを、利用したいホストに転送する方法も同じように都合の良い手段を用いることができます。
No TrackBacks
TrackBack URL: http://bouncehammer.jp/cgi-bin/mt/mt-tb.cgi/48

Leave a comment