モーグルとカバとパウダーの日記

モーグルやカバ(EXカービング)山スキー(BC)などがメインの日記でした。今は仕事のコンピュータ系のネタが主になっています。以前はスパム対策関連が多かったのですが最近はディープラーニング関連が多めです。

Postfix-2.3でsleep中に切断されたらすぐに終了するパッチ

 Starpitなど、遅延を使ってスパム対策などを行っている場合、すぐに処理が終了しないため、smtpdプロセスが増加します。
 Starpitでは経験的に、普段起動しているプロセス数の2倍〜3倍程度になるようです。

 負荷の少ないメールサーバではほとんど問題となりませんが、受信するメールが非常に多いサーバの場合、プロセスの増加がメモリ消費などの点で(増加したプロセスはsleepしているだけなのでCPU負荷的には問題にならない)問題になることがあります。


 そこで、遅延している間に相手が接続を切ったら、こちらのsmtpdもすぐに終了するようになるパッチを作成しました。
 Postfix-2.3.x (最新 stable)に対してのパッチです。

http://k2net.hakuba.jp/pub/postfix-sleep.patch

(追記)
 Postfix-2.2.1 対してはLukeさんが下記で配布いただいています。
http://blog.dyndns.tv/~luke/archives/postfix-2.2.1-sleephack.diff


 このパッチにより、Starpitによるプロセス増加が遅延60sの場合で1.5倍ほどですむようになります。
 または、Starpitにより増加したプロセス数を、遅延90sで40%程度、遅延60sで70%程度に減らすことが出来るようになります。
 

(追記)
 このパッチを当てたPostfixでStarpitを導入された方は、できればsmtpdの平均プロセス数を導入前後で測っていただき、レポートいただけないでしょうか。
 「ps ax|grep smtpd|wc -l」とかをcronで定期的にとっていただければありがたいですが、気がついた時に何回か測っていただいた平均程度でもかまいません。
 こちらのコメントか、プロフィールのアドレスまでメールください。


 また、このパッチを当てることの副効果として、どれだけ遅延が掛かかったときに切断されたかをログに残すことが出来ます。
 それにより、スパマーがどのくらいのタイムアウトに設定しているのか客観的な情報を集めて、遅延時間を決めることが出来るようになります。

続きを読む

Sleipnir用GreaseMonkey SeaHorse

Sleipnir版GreasemonkeyというかTrixieというかなSeaHorse :にゅーあきばどっとこむ より

SeaHorse|タブブラウザ Sleipnir プラグイン|Fenrir Extensions Center

GreaseMonkey 使いたいために、FireFoxメインにしようかと思いつつ、やっぱりSleipnirのほうが使いやすい、と思ってたわけですが。
SeaHorseというプラグインを導入することでGreaseMonkeyが使えるようになるようです。


GreaseMokeyとは、特定のページに対してユーザ側の用意したJavaScriptをフィルタとして当ててから表示とかできるもの。
つまり、こっち側で好きなように加工してからページを表示できるわけです。


ちなみに、IEではTrixieというので出来るらしいです。
で、GreaseMonkey用のスクリプトは、そのままではあまり動かないらしいですが、Trixie用なら結構動くらしいです。


Greasemonkey - Mozilla Firefox まとめサイト
よく使う Greasemonkey スクリプト
Trixie Scripts
Greasemonkeyで快適Web生活 Googleの検索結果を使いやすくするFirefoxの拡張とGreasemonkey
Google x (はてブ, MM/Memo, del.icio.us) - いぬビーム
全サイトはてブ化・その場コメント・ワンクリブクマ - いぬビーム


と、いくつかGreaseMonkeyスクリプトを落として試してみたんですが、使いたいのはぜんぜん動かず orz
自分で手を入れて動くようにするしかないようです。


ということで、暇なときにぼちぼちやってみます。


(追記)

Get Turnabout :: Reify Turnabout
http://www.reifysoft.com/turnabout.php

IE用にTurnaboutというのがあり、こちらだとGreaseMonkey用のスクリプトもほぼそのまま動くようになっているらしいです。
なので、SeaHorseTurnaboutでやってるようなことを導入して欲しいなあと思うところ。

デジカメ画像ファイルとかを日付でフォルダに分けるスクリプト

うちではデジカメの画像を、フォルダに日付+その内容という名前をつけて、日付ごとに保存するようにしてるんですが、SDカードの容量増加もあって、すごいたくさんたまっちゃってから分類しようとするんで、片付けがとても億劫になってます。


中身見て名前付けるのはまだしも、日付ごとにフォルダ作ってそこにファイルを放り込む、という単純作業がうっとおしいので、そこを自動化するスクリプトを書きました。

続きを読む