Hatena::ブログ(Diary)

ツユダクの肉増しのRuby on Railsの初心者で このページをアンテナに追加 RSSフィード Twitter

2015-10-20

使い捨てメールアドレス発行サービス作りました

| 23:34 | 使い捨てメールアドレス発行サービス作りましたを含むブックマーク 使い捨てメールアドレス発行サービス作りましたのブックマークコメント

http://instance-email.com/

1セッションで最大6個までメールアドレスをワンクリックで発行できます。
メールアドレスは作成から2日間利用可能で、5MBまでのメールを受信できます。
途中だるくなったり設定うまくいかなったりで制作期間2ヶ月くらいという感じです。
フロントはnginx + unicorn(Rails)でバックのメールサーバにはPostfixDovecot使いました。他にはmysql, debianで。
サーバはさくらのVPSで、 デプロイcapistranoであるあるな構成です。

f:id:jiikko:20151020233135g:image

あと、ブログを引っ越しました。以降は http://blog.jiikko.com/ で書いていきます。
http://blog.jiikko.com/

最近, Lokka => はてブロ に移動する人がちらほら見るのですが今回は逆パターンです。
自分でCMSをホストするとなると画像のアップロードどうしようか考えてます。全部base64エンコードして本文に含めたらポータビリティとか思ったり。

2015-09-07

デプロイツール

| 21:48 | デプロイツールを含むブックマーク デプロイツールのブックマークコメント

capistranoロールバックできるし一通りシムボリックリンク貼ってくれたりでだいたいのことはカバーしてれくるので導入コストはかかるが便利なんだけど、
railsデプロイするために必要な周辺gemの調査が毎度めんどい。

思えばcapstrano2 => 3の時もめんどかった。cap2系はrailsにフォーカスして作られていたので必須gemほとんどなかったんだけど,
3系からrvm, bundlerあたりが別のgemに切りだされて、railsアプリをデプロイするにはcapistrano-rvm, capistrano-bundlerあたりが必要になった気がする。

それで、半年ぶり新しいcapを使おうと思ったらrvm周りのgemが謎な名前になってるじゃん。

https://github.com/rvm/rvm-capistrano
https://github.com/rvm/rvm1-capistrano3

READMEに書いていた。

rvm-capistrano 1.3.0 with Autolibs requires at least RVM 1.19.0.
capistrano 3.0.0 is a rewrite and does not work with this gem, use rvm1/capistrano3 it will be extended to match this gem functionality.

代謝するものだし仕方ないのかなと思いつつ、古いバージョンを使うのも嫌なので仕方なく今のcapistranoについて調べているところ。

まとめ

capistarano捨てて自家製秘伝のタレshellスクリプトデプロイしよう!

2015-09-02

μTRONキーボード買った感想

| 21:50 | μTRONキーボード買った感想を含むブックマーク μTRONキーボード買った感想のブックマークコメント

エルゴノミクスキーボードはMicroSoftのを半年くらい使っていてようやく気持ちよく使えるようになったところだったんだけど、値段が安いせいか割りとちゃんと押さないと判定されなかったり、EnterKeyが遠いし全体的にでかい。そしてESCキーの打刻感が最悪。
emacsキーバインドを常時マッピングしているので致命的にやばいって訳ではないんだけど若干ストレスなので、このキーボードにロックインされるのは不憫だと思っていた。
最近腱鞘炎というか手の甲が火を噴いてきたのでμTRONキーボードを買った。とりあえず糞高い。

使ってみてMenu、Alt、半角/全角が一番左に密集していたり、スペースとかTABの位置がぶっ飛んでいる場所にあるし、
左4列目がキー1つ分左に流れているのでとんでもないものを買ってしまった感がある。
だがしかしリマップしまくってなんとか自我を保っています。

Macのキーボードユーティリティのkarabinar でリマップしました。
↓リマップのprivate.xmlです。デバイスIDを指定してこのキーボードのみリマップするようにしています。
https://gist.github.com/jiikko/984be9bdd76d839332ae

現時点で言えることはkarabinar便利です。

これ書きながら思ったのだけどオフィス用と自宅用をおくなら、コスト的な意味でキネシスの左右分離でよかったんじゃねえの。
http://www.edikun.co.jp/kinesis/freestyle.htm

なお、このテキストはApple純正キーボードで書いています。

2015-08-30

sugoi-aliases-updator の 0.0.3をリリースしました

| 21:16 | sugoi-aliases-updator の 0.0.3をリリースしましたを含むブックマーク sugoi-aliases-updator の 0.0.3をリリースしましたのブックマークコメント

https://github.com/jiikko/sugoi-aliases-updator
https://github.com/jiikko/sugoi-aliases-updator/releases/tag/v0.0.3

社内から要望があったのでその対応です。

以下更新内容です。

  • rmにはdelを、listにはshowというコマンドのエイリアスを受け付けるようになりました。
  • ruby1.9系に対応しました。

以上。

2015-08-18

postfixとdovecot-lmtpを同じホストで使う意味ある?

| 00:47 | postfixとdovecot-lmtpを同じホストで使う意味ある?を含むブックマーク postfixとdovecot-lmtpを同じホストで使う意味ある?のブックマークコメント

メールボックスサーバが別のホストならわかるけど、同一だった場合意味あるのか?と思った。

タイトルの構成にするメリット

postfix vdaパッチなしでmaildir quotaを実現できる

新しいpostfixのバージョンにはvdaパッチがバグるとかありそうなので、パッチなし環境というのは少なくとも安定してると言えそう。

パフォーマンスがいい

postfix がメールボックスへの配送した場合、配送とquotaの処理をpostfixすることになるのでキューが詰まる、ということが起きるんじゃないかな。
その点、メールボックスの配送とquotaをdovecot-lmtpに任せた場合、上の仕事からpostffixのプロセスが開放されるのでより多くのメールを処理できる、ってことになるはず。





パフォーマンスあたりについて下記記事が言及してた。
http://ya.maya.st/d/201103c.html

_ dovecotIMAP/POP サーバなので、メールボックスの扱いかたを知っている。どのユーザのメールボックスがどの場所に置いてあるかとか、mbox なのか Maildir なのかとか。もちろん postfix 側でもそれは設定することができるけど、dovecot と完全に同じ設定になっていなければならず、そのへんをチェックするのはめんどくさい。メールボックスへのアクセスを dovecot に一元化してしまえばそんなの気にしなくてもよくなる。

_ メールボックスに格納されるのは mbox だの Maildir だのといった形式的なものだけでなく、フォルダにどんなメールがあるかとかどのメールが未読でどれが既読かといった情報も含まれる。LDA/LMTP でローカル配送をおこなうと、配送が完了した時点でこのインデックスの更新もおこなわれる。MTA の LDA や procmail などの汎用品で配送する場合、インデックスの更新はログインしてメールボックスにアクセスしたときにおこなわれることになるが、前回ログアウト時からの差分が大きいとこの時間が馬鹿にならず、ひじょーに重く感じることになる。ローカル配送を LDA/LMTP でおこなうと IMAP が軽くなる。

_ ということで、dovecot の LDA/LMTP を使うことにはたくさんのメリットがありデメリットがない。もちろん、これは POP/IMAP サーバが dovecot ではなく cyrus などでも同じことがいえる。IMAP サーバに LDA/LMTP の機能があるならば MTA のものを使わずそっちを使うべき。

_ LDA と LMTP のどちらを使うか。LMTP は並列配送度を上げられるので大量のメールが届く環境ではかなり高速化できるかもしれないとか、LMTP は TCP で listen することもできるのでメールを受けるホストとメールボックスを置くホストを物理的に分離することが容易になるとか、LDA はメール1通ごとにプロセスを起動するけど LMTP はデーモンなのでプロセス起動のオーバーヘッドがないとかいうメリットがあるけど、うちのような小規模なところでは大差ない:-)。


lmtp使いましょう!!